Environment:
Memcached, Rails 2.2.2 + cache_money, Sphinx + thinking sphinx
The following yields stale results:
– add a record; mysql contains the correct data
– the record is probably cached in memory at this point
– re-index sphinx
– sphinx returns the proper result with the correct data
– edit the record
– the cache is invalidated properly, mysql contains the correct, updated data
– re-index sphinx again
– sphinx is now stale
Re-indexing sphinx, clearing memcached, and/or editing the questionable records all have no effect. Disabling the cache layer all together (cache_money plus memcached) also has no effect.
Does your delta query just get new, unindexed rows from your table(s), or is it grabbing every row with a modified time greater than a specified value?