Comment 61 for bug 131094

Revision history for this message
Jamie McCracken (jamiemcc-blueyonder) wrote :

I dont know about other indexers

Trackers indexer is a hash table so words are written at random locations - its not possible to write more than one word at a time nor do we know whether certain words are stored sequentially as a result.

We rely on the kernel to order the writes elevator fashion so they can be written in a contiguous fashion - sadly that does not happen on ext3 but does if ~/.cache/tracker is mounted on XFS

We call fdatasync after every 1000-5000 words written to prevent pdflush starving the disk from other apps (this starvation appears to be a recent problem in kernels since 2.6.20)

I will add an option for fast merges which is approx 50% quicker without any fsyncs but will hog the disk when doing so on ext3.