That's correct - any change of structure (as opposed to data) requires Sphinx to be restarted.
-- Pat On 17/10/2008, at 12:51 AM, Emil Tin wrote: > > hi pat, > thanks you for reply. > i trust that the daemon is very stable, but as far as i understood it, > whenever i change the define_index'es i have to stop, reconfigure, > reindex and restart sphinx? > > > > > On Oct 16, 6:13 am, Pat Allan <[EMAIL PROTECTED]> wrote: >> HiEmil >> >> Thinking Sphinx doesn't just talk to Sphinx to get deltas indexed. >> For >> example, when a model instance is destroyed, the following things >> happen: >> >> - Check if the instance exists in the core index >> - Flags it as deleted in the core index if it does >> - If deltas are enabled and the instance had delta set to true, flag >> it as deleted in the delta index >> >> The first two steps happen every time, whether you're using delta >> indexes or not. This is to make sure those deleted records don't get >> returned in search queries. >> >> And ideally, the Sphinx daemon should be running constantly. From >> what >> I've found (and heard from others), the daemon is very stable, and >> rarely crashes. And when it does, that's where process tracking tools >> like God and Monit can be useful. >> >> Hope this clears things up a bit. >> >> -- >> Pat >> e: [EMAIL PROTECTED] || m: +614 1327 3337 >> w:http://freelancing-gods.com|| t: twitter.com/pat >> discworld:http://ausdwcon.org|| skype: patallan >> >> On 15/10/2008, at 11:27 PM,EmilTin wrote: >> >> >> >>> thanks for you reply. >> >>> i now have sphinx running on a separate ec2 instance, and rails >>> accessing it. the key was to edit the production.config.sphinx >>> file in >>> the rails config folder on the sphinx server (i deploy the rail app >>> folder, but don't run the app) to 0.0.0.0 isntead of the default >>> 127.0.0.0, to make sure it listens to all interfaces, not just the >>> local one. >> >>> destroy an indexed model will still causes an exception if the >>> sphinx >>> server can't be reached. that's really bad, since it could mean >>> otherwise perfect cod breaks down in case th sphinx server is down. >>> it's suddently making my rails app very fragile. and there's no need >>> to! delta indexing is off! in any case it would be better to just >>> silently ignore the error, so problems are not multiplied. it's much >>> worse to have a destroy() call fail than failing to update a non- >>> existing delta search index. >> >>> On Oct 15, 10:06 am, Pat Allan <[EMAIL PROTECTED]> wrote: >>>> HiEmil >> >>>> Sorry there's not been a reply to this, but I think the short >>>> answer >>>> is: no, there's no easy way to do this. You could overwrite some >>>> methods or something like that, but it's definitely a hackish >>>> solution, and would be best just to focus on getting the >>>> environment >>>> working correctly so this is no longer an issue. >> >>>> Sorry, I realise that's not really all that helpful. And I've never >>>> tried EC2, let alone getting Sphinx running on it. >> >>>> -- >>>> Pat >> >>>> On 08/10/2008, at 4:59 PM,EmilTin wrote: >> >>>>> The problem is this: whenever the sphinx server is down, not only >>>>> the >>>>> search page stops working. Every page that tries to delete a model >>>>> will fail. This is a problem while I'm trying to get the sphinx >>>>> server >>>>> up running. I still haven't managed to make TS contact the sphinx >>>>> server running on a separate EC2 instance. >> >>>>> Is there anyway to stop TS from trying to change the >>>>> sphinx_deleted >>>>> attribute? (Even just temporarily?) >> >>>>> On Oct 7, 10:18 am, Pat Allan <[EMAIL PROTECTED]> wrote: >>>>>> HiEmil >> >>>>>> Sphinx can update _attributes_ in indexes (but not fields - hence >>>>>> why >>>>>> some people use delta indexes) - and there's an attribute, >>>>>> created by >>>>>> Thinking Sphinx, called sphinx_deleted. This gets set to true >>>>>> when a >>>>>> model is deleted, so it won't get returned in future results >>>>>> (otherwise pagination counts are inaccurate). >> >>>>>> Cheers >> >>>>>> -- >>>>>> Pat >> >>>>>> On 06/10/2008, at 9:12 PM,EmilTin wrote: >> >>>>>>> Hi! >> >>>>>>> I'm gettting the error 'Connection to Sphinx Daemon (searchd) >>>>>>> failed' >>>>>>> whenever I try to delete any of my indexed models. >> >>>>>>> It's true that the sphinx server is not running. But delta >>>>>>> indexing is >>>>>>> not turned on, so why would TS try to connect to the sphinx >>>>>>> server >>>>>>> when destroying a model? >> >>>>>>> none of my models include :delta => true. They only contain >>>>>>> trivial >>>>>>> things like: >> >>>>>>> define_index do >>>>>>> indexes :name >>>>>>> indexes :description >>>>>>> end >> >>>>>>> trace: >>>>>>> vendor/plugins/thinking-sphinx/lib/thinking_sphinx/search.rb: >>>>>>> 231:in >>>>>>> `search_for_id' >>>>>>> vendor/plugins/thinking-sphinx/lib/thinking_sphinx/ >>>>>>> active_record/ >>>>>>> search.rb:43:in `search_for_id' >>>>>>> vendor/plugins/thinking-sphinx/lib/thinking_sphinx/ >>>>>>> active_record.rb: >>>>>>> 121:in `in_core_index?' >>>>>>> vendor/plugins/thinking-sphinx/lib/thinking_sphinx/ >>>>>>> active_record.rb: >>>>>>> 137:in `toggle_deleted' >>>>>>> vendor/rails/activesupport/lib/active_support/callbacks.rb: >>>>>>> 173:in >>>>>>> `send' >>>>>>> vendor/rails/activesupport/lib/active_support/callbacks.rb: >>>>>>> 173:in >>>>>>> `evaluate_method' >>>>>>> vendor/rails/activesupport/lib/active_support/callbacks.rb: >>>>>>> 161:in >>>>>>> `call' >>>>>>> vendor/rails/activesupport/lib/active_support/callbacks.rb:93:in >>>>>>> `run' >>>>>>> vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in >>>>>>> `each' >>>>>>> vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in >>>>>>> `send' >>>>>>> vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in >>>>>>> `run' >>>>>>> vendor/rails/activesupport/lib/active_support/callbacks.rb: >>>>>>> 272:in >>>>>>> `run_callbacks' >>>>>>> vendor/rails/activerecord/lib/active_record/callbacks.rb:298:in >>>>>>> `callback' >>>>>>> vendor/rails/activerecord/lib/active_record/callbacks.rb:290:in >>>>>>> `destroy_without_transactions' >>>>>>> vendor/rails/activerecord/lib/active_record/transactions.rb: >>>>>>> 102:in >>>>>>> `destroy_without_after_commit_callback' >>>>>>> vendor/rails/activerecord/lib/active_record/connection_adapters/ >>>>>>> abstract/database_statements.rb:66:in `transaction' >>>>>>> vendor/rails/activerecord/lib/active_record/transactions.rb: >>>>>>> 79:in >>>>>>> `transaction' >>>>>>> vendor/rails/activerecord/lib/active_record/transactions.rb: >>>>>>> 98:in >>>>>>> `transaction' >>>>>>> vendor/rails/activerecord/lib/active_record/transactions.rb: >>>>>>> 102:in >>>>>>> `destroy_without_after_commit_callback' >>>>>>> vendor/plugins/thinking-sphinx/lib/thinking_sphinx/ >>>>>>> active_record/ >>>>>>> delta.rb:58:in `destroy' >>>>>>> app/controllers/bands_controller.rb:236:in `destroy' > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Thinking Sphinx" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/thinking-sphinx?hl=en -~----------~----~----~----~------~----~------~--~---
