The ts:rebuild task stops sphinx, rebuilds the indexes, then restarts
sphinx. It's a good sign that this works.
The ts:index task rebuilds your indexes while sphinx is still running,
then signals sphinx when finished and the new indexes are loaded.
The index task attempts to detect if sphinx is running, and only sends
the signal if it is. If it thinks sphinx isn't running, it will rebuild
the indexes, but they won't be "live" until you manually restart.
So, when you run ts:index:
- check that sphinx is actually running
- check the permissions on the sphinx pid file
(log/searchd.development.pid by default) and ensure the user running
the index rake task has permissions to read it
-- James Healy <jimmy-at-deefa-dot-com> Fri, 25 Sep 2009 11:50:31 +1000