Issue
After forcing Spotlight to reindex, no files or directories can be found.
Setup
I've got a MacBook Pro 15" 2017 with a 512 GB SSD: 250 GB main volume (36 free) and a BOOTCAMP partition (not indexed), running macOS High Sierra (10.13.6). The file system is APFS.
How it happened
I wanted to force a Spotlight re-indexing (because a file, that was definitely in place, was missing in Search), so I added the whole volume to System Preferences -> Spotlight -> Privacy, and then removed it from there (Apple Support link), which should've caused a full Spotlight reindex. It did. a bunch of mdworker
processes appeared and started consuming CPU time and reading stuff from disk (which is expected).
Then they stopped. They are still there but they don't seem to be doing anything judging by the CPU load / disk usage stats.
And yet, now I can't find ANY files. Spotlight doesn't output any files / directories at all. It only outputs other stuff like visited emails, Dictionary suggestions, etc. Search (in Finder) doesn't work either.
What I tried:
Waiting for ~12 hours. I can't believe indexing ~220 Gb of content on a 3Gb/s SSD takes so long. Especially considering the zero CPU load.
Rebooting the mac (didn't help) and repeating the whole sequence again, waiting a few seconds before removing the disk from "Privacy" and waiting for quite a long time again.
running
sudo mdutil -E /
with the same effect as before (high CPU load -> no CPU load -> nothing is indexed).
By the way, running mdutil -s /
returns Indexing enabled.
There's no "Indexing" bar in my Spotlight window, if that's important.
Questions
Is there anything else I could try other than waiting for the problem to solve itself or updating to Mojave? Maybe there are more verbose Spotlight logs somewhere or something?
Possibly related question (no answer): Spotlight borked after macOS Sierra update (AskDifferent).
sudo rm -R .Spotlight-V100/
mdworker
s appeared (there are 11 of them now, which is weird). CPU load is up again. I hope it will index everything correctly this time. I'll let you know of the result.