我已将 delta 列添加到我的表中:
class AddDeltaIndexToCimgs < ActiveRecord::Migration
def change
add_column :cimgs, :delta, :boolean, default: true, null: false
end
end
我迁移了
我还添加了define_index:
define_index do
indexes search_cache
has :approved
set_property delta: true
end
我运行了 rake 任务
rake ts:stop
rake ts:index
rake ts:start
或者rake ts:rebuild
然后我在表中添加一条新记录,搜索它......什么也没有。可以完美地找到核心索引记录,但增量根本不起作用。
要搜索它们,我使用以下内容:
Cimg.search query, with: {approved: true}
是的,每个 Cimg 都被批准了,并且在 search_cache 中有一堆东西,新的在数据库中用 delta=1 标记。我仔细检查了一遍。
我检查了 db/sphinx 文件夹,并创建了很多同名的文件cimg_delta
。
这是生成的配置文件: http: //pastebin.com/z0fHr43k
Sphinx version: 2.0.7
Thinking Sphinx gem version: 2.0.5
Rails version: 3.1.0.rc8
Ruby version: 1.9.2p290
知道为什么会发生这种情况吗?