Why is OS X indexing *again*?

For some reason, OS X thinks it's a good idea to reindex my entire hard drive (which takes it a few hours) about twice a week. This is really getting annoying, especially since it does this on battery, and drains it quickly.

There's nothing suspicious in the Console, when I grep for mdworker it only gives:

6/12/12 6:04:40.870 PM com.apple.launchd.peruser.501: (com.apple.mdworker.pool.0) Throttling respawn: Will start in 2 seconds
6/12/12 6:11:19.769 PM mdworker: CFPropertyListCreateFromXMLData(): Old-style plist parser: missing semicolon in dictionary.
6/12/12 8:26:59.774 PM mdworker: CFPropertyListCreateFromXMLData(): Old-style plist parser: missing semicolon in dictionary.

There's also a huge number of these errors (about one every 5 seconds):

6/12/12 8:29:25.000 PM kernel: SMC::smcReadKeyAction ERROR F1Mn kSMCBadArgumentError(0x89) fKeyHashTable=0x0xffffff800a715000

(I posted a different question about that here)

Why is it indexing and how can I stop this annoying behavior? Why would it ever need to reindex the entire drive? Every sane indexing program only indexes new files. I don't see why would it need to reindex the whole drive, and I certainly don't see why it would need to do this twice a week.


Solution 1:

I found my disk was indexing a lot a few months ago, probably more than twice a week. Finally tracked it down to Backblaze - it turned out that backblaze creates a lot of temporary files as it backs up, especially if you're working with lots of small files (which I do, being a programmer). Spotlight would see those changes and initiate a re-index causing my fan to kick in and the laptop to get hot and burn through battery-life very quickly. Adding the /Library/Backblaze directory to blacklist in Spotlight's settings fixed the problem.

I've also heard people can have the same problem if they have a very active Dropbox account.

If you're doing any video editing this can also be a cause; adding the working directories to Spotlight's blacklist should help. Or, basically, any app that creates a lot of files outside of the OS's temp directories.