由于某种原因,没有显示在 rake thinking_sphinx:index(或配置)之后添加到数据库的用户。我尝试重新启动服务器,停止思考狮身人面像然后重新启动和配置。仍然遇到同样的问题。
当我运行 rails c 并执行 User.search 时,我只能从运行索引/配置之前创建的数据库中获取结果。
我刚刚刷新了数据库以通过运行将这个项目投入生产。
rake db:reset
然后我重新启动了服务器,我遇到了这个问题。当我运行配置时,我在我的 searchd.log 文件中得到了这个:
[Tue Jan 15 18:56:02.491 2013] [ 1742] rotating indices (seamless=1)
[Tue Jan 15 18:56:02.499 2013] [ 1742] rotating index 'user_core': success
[Tue Jan 15 18:56:02.506 2013] [ 1742] rotating index 'synonym_delta': success
[Tue Jan 15 18:56:02.512 2013] [ 1742] rotating index 'synonym_core': success
[Tue Jan 15 18:56:02.519 2013] [ 1742] rotating index 'bar_delta': success
[Tue Jan 15 18:56:02.525 2013] [ 1742] rotating index 'bar_core': success
[Tue Jan 15 18:56:02.525 2013] [ 1742] rotating finished
这在 searchd.query.log 中:
[Tue Jan 15 18:56:06.556 2013] 0.000 sec [ext/2/rel 8 (0,20)] [user_core]
[Tue Jan 15 18:56:06.566 2013] 0.001 sec [ext/2/rel 8 (0,20)] [user_core]
[Tue Jan 15 18:56:06.575 2013] 0.000 sec [ext/2/rel 8 (0,20)] [user_core]
在刷新数据库并重新启动服务器之前,我从来没有遇到过搜索不返回更新结果的问题。在此期间,没有任何代码被更改。任何关于可能是什么问题的见解将不胜感激。另外,如果您需要更多细节,请告诉我,我可以发布更多信息。我不愿意张贴太多,甚至让人们无法阅读。所以让我知道什么有助于更好地理解我的问题。
**更奇怪的是,我在使用任何其他模型(例如场地)时都没有遇到这个问题。保存到数据库后通过搜索更新和显示...
- - - - - - - - - - - - - - 更新 - - - - - - - - - - - --------------
所以我运行了 rails 控制台,如果我运行
User.search
我得到 10 个结果,以在运行 ts:rebuild 之前添加的最后一行结束。但是当我运行时:
User.all
我得到了 11 个结果,其中包括数据库中的所有行。不管最后一次运行 ts:rebuild / index / configure ...
谢谢
艾伦