I was having some issues with my desktop photos (which I load from Photos) not working properly, and I noticed that one particular photo wouldn't preview in the Wallpaper System Settings panel. I noted the name, searched for it in Photos, and came up with no matches. Then I tried other searches, for photos I knew were there as I could see them onscreen, and still, no matches. Clearly Photos' search was broken.
I tried the (long, slow, painful) photo library rebuild process, but still, no search.
After much digging, I found a solution that works, which is to force Photos to rebuild its search database. Here's how to do that:
- Make sure you have good backup of Photos before you start, just in case.
- Also make sure you quit Photos before proceeding.
- In Finder, navigate to your Photos.library file and right-click on it. Select Show Package Contents from the pop-up menu.
- In the new window that opens, open the database folder. Inside of that folder is a search folder. Delete it, but leave the database folder open.
That's it, you're (almost) done. Now launch Photos, and it will start rebuilding the search database. This can take a while, depending on the size of your database—it took about five or so minutes for my 65,000ish image collection. There's also no onscreen indication that anything is happening, so use Finder: Open the newly-created search folder in Finder, and check the size of the psi.sqlite file. When the size stops changing, the rebuild is done.
I found this answer in a post by Michelle Lyons in this Apple Discussiosn thread. Michelle notes they found the answer elsewhere, but don't link to that source, so I don't know who originally discovered this. All I know is it worked for me!