我正在进行大规模迁移,并希望禁用增量索引,以便它运行得更快。
有没有办法在任务开始时指定关闭delta索引?
答案 0 :(得分:13)
两个选项:
Model.suspended_delta do
# all actions in the block don't fire a delta request
end
# A single delta request gets fired at the end
或者,在您的情况下可能会更好:
ThinkingSphinx.deltas_enabled = false
完成后将其设置回true
。
答案 1 :(得分:9)
对于思考sphinx v3,您可以通过这种方式暂停增量(旧方法已被弃用):
ThinkingSphinx::Deltas.suspend(:index_reference) do
# Do something
end
因此,如果我有一个名为Job的模型,其索引名为:job,它将如下所示:
ThinkingSphinx::Deltas.suspend(:job) do
# Do Something
end