I've never seen this in production or development (but going by emails here, plenty of others have). How often is it happening for you? Is it easy to reproduce?
I'm wondering if it's related to the cache_class setting, and maybe that leads to an invalid query being sent to Sphinx. If you can make it happen regularly, perhaps it's worth adding some debug output to TS to find out what query is being generated.
Cheers
--
Pat
> --
> You received this message because you are subscribed to the Google Groups "Thinking Sphinx" group.
> To post to this group, send email to thinkin...@googlegroups.com.
> To unsubscribe from this group, send email to thinking-sphi...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/thinking-sphinx?hl=en.
--
Pat
Sorry for the delay. Here's what I can tell from that stack trace:
* the record you're using has delta set to true.
* Thinking Sphinx is searching for that record in the delta index...
However, delta indexing hasn't happened at that point (if this is the first edit), so the record doesn't exist in the delta index. So it *should* just return an empty result set, but it's failing hard.
Can you try something for me? After running a full index (so no delta flags are set), grab a user instance, and run the following:
User.search_for_id(user.sphinx_document_id, 'user_delta')
Does it fail? Or return false?
--
Pat
I've just made a change to TS which should hopefully work around this. It'll be a bit fiddly, but can you grab my latest source, and run the following commands:
bundle
rake build
gem install pkg/thinking-sphinx-1.4.3.gem --local
I just want to confirm it fixes this problem before pushing out a new gem release. Thanks!
--
Pat
Stripped out some unused methods (and their specs), reworked one to do what we need, with a rescue for the error you're getting.
False is what I'd expect from that code, so that's fine... am defaulting to true, though - as there's other rescue blocks that will handle these situations.
--
Pat
--
Pat