【问题标题】:Thinking Sphinx - Delta indexing doesn't workThinking Sphinx - Delta 索引不起作用
【发布时间】:2009-05-05 09:40:54
【问题描述】:

在我的应用程序中,我需要立即将每条新记录添加到索引中(而不是在 rake ts:index 之后)。如果我理解正确,增量索引就是我正在寻找的。因此,我将delta 列添加到我使用Sphinx 索引的每个表中,将默认值设置为false 并将set_property :delta => true 添加到每个define_index 块;然后运行 ​​rake ts:index 和 rake ts:restart。但是,“即时”索引似乎不起作用。在控制台中测试时,我创建了一个新记录,保存并尝试搜索它但不会取回它(在我运行 rake ts:index 后它工作得很好)。我在这里做错了吗?

【问题讨论】:

    标签: ruby-on-rails ruby thinking-sphinx


    【解决方案1】:

    感谢您的努力。经过一些相当长的探索后,我发现我只是忘记了运行迁移(它将 delta 列的默认值设置为 false)。现在,我应该为这样一个愚蠢的错误得到一些减分。很抱歉打扰您,再次感谢您。

    【讨论】:

    • 没有办法减分。其他人会犯同样的错误,现在他们可以谷歌并找到解决方案。你的痛苦是别人的收获。
    • 不开玩笑!三年后我来了,我也有同样的问题。
    【解决方案2】:

    我在增量索引不起作用时遇到了类似的问题...实际上它在我的开发环境中有效,但在生产环境中无效。我对帖子开头的陈述感到困惑,这些陈述表明 delta 的默认值应该为 false。在 http://freelancing-god.github.com/ts/en/deltas.html 的思想 sphinx 文档中,它指出默认值应该是 true:

    def self.up
      add_column :articles, :delta, :boolean, :default => true,
        :null => false
    end
    

    我错过了什么吗?

    谢谢!

    【讨论】:

    • 我也有同样的疑问
    【解决方案3】:

    您是否使用 rake ts:conf after 正确生成配置文件?

    然后您可以检查生成的配置文件,看看配置文件中是否同时存在 SQL 请求(标准和增量)。

    我们使用它没有问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多