Recently I have been having an issue where at least once a month my Spotlight index gets corrupted, and I can no longer search the content of mail in Mail.app. I can fix the problem by taking my HD out of Spotlight, and then putting it back in, but it then takes about 4 hours to re-index the drive.

Why is my Spotlight index getting munged? Do other applications besides Finder mess about with it?

Is there a way to keep the index optimized or repair it, such as when I repair a MySQL table?

  • 1
    Other apps can indeed include metadata about their documents into Spotlight. – zneak Aug 30 '10 at 2:01
  • What makes you think it's Spotlight corruption? – Henry Sep 1 '10 at 1:23
  • When I have spotlight re-index the drive, the problem fixes itself. – Darren Newton Sep 2 '10 at 13:13
  • Is this still happening after you did this? bit.ly/9zg771 – Martin Marconcini Sep 4 '10 at 20:40
  • @Martín - so far so good. I've re-indexed before and it got corrupted after about 3 weeks. So I'm watching... – Darren Newton Sep 9 '10 at 10:31

Just for reference, Spotlight index shouldn’t get corrupted, but when that’s the case see this question.

You have to remember that spotlight is a database and as such is prone to corruption; compared to relational databases for example, spotlight can only be deleted and rebuilt when that happens. There’s no “spotlight -repair” command (one can only wish).

All in all, it’s rare to see Spotlight failing in OS X 10.6, it has been very stable compared to the first Tiger version.

External applications, on the other hand, can make use of the APIs to store information in the metadata, and here’s where we lose control of what goes in there. If one external application is storing bad data, it could cause the whole index to go nuts.

Since you have a healthy working index now, try it for a few weeks and pay attention to any application or utility that claims to support Spotlight.

Good Luck!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .