Ruby on rails 太阳黑子轨道是';t:auto_index和:auto_remove

Ruby on rails 太阳黑子轨道是';t:auto_index和:auto_remove,ruby-on-rails,sunspot,sunspot-rails,Ruby On Rails,Sunspot,Sunspot Rails,我正试图使我们的应用程序更能适应搜索服务器的停机时间。为了实现这一点,我尝试禁用自动索引和删除,并在后台手动执行它们 我正在努力 searchable :auto_index => false, :auto_remove => false do ... end 但每次我试图保存或销毁记录时,仍会收到连接错误 回溯显示错误来自solr searchable文件,因此肯定是sunspot_rails导致了问题。以下是销毁时回溯的一个片段: ... rsolr (1.0.8) lib/r

我正试图使我们的应用程序更能适应搜索服务器的停机时间。为了实现这一点,我尝试禁用自动索引和删除,并在后台手动执行它们

我正在努力

searchable :auto_index => false, :auto_remove => false do
...
end
但每次我试图保存或销毁记录时,仍会收到连接错误

回溯显示错误来自solr searchable文件,因此肯定是sunspot_rails导致了问题。以下是销毁时回溯的一个片段:

...
rsolr (1.0.8) lib/rsolr/client.rb:67:in `update'
rsolr (1.0.8) lib/rsolr/client.rb:121:in `delete_by_id'
sunspot (1.3.3) lib/sunspot/indexer.rb:36:in `remove'
sunspot (1.3.3) lib/sunspot/session.rb:137:in `block in remove'
sunspot (1.3.3) lib/sunspot/session.rb:136:in `each'
sunspot (1.3.3) lib/sunspot/session.rb:136:in `remove'
sunspot (1.3.3) lib/sunspot/session_proxy/abstract_session_proxy.rb:11:in `remove'
sunspot (1.3.3) lib/sunspot.rb:410:in `remove'
sunspot_rails (1.3.3) lib/sunspot/rails/searchable.rb:390:in `solr_remove_from_index'
sunspot_rails (1.3.3) lib/sunspot/rails/searchable.rb:93:in `block in searchable'
...
知道为什么禁用这些挂钩的选项不起作用吗?你知道如何禁用它们吗


谢谢

找到了我自己问题的答案:


事实证明,虽然自动回调被禁用,但我还是在另一个步骤中弄脏了它。sunspot_rails有一个清理步骤,在请求结束时运行,并尝试将所有脏记录提交到solr服务器。要禁用它,请在请求后添加
auto\u commit\u:false
到您的
sunspot.yml

谢谢@Forrest提供的有用信息