Sphinx搜索MVA属性

Sphinx搜索MVA属性,sphinx,Sphinx,我们正在考虑将Sphinx升级到3.3.1版(目前为2.2.11版)。 现在,我们遇到了一些用于方面的MVA属性的问题 sphinx配置的片段: sql\u attr\u multi=uint applicationId来自字段applicationId db中的Appliantids列是包含逗号分隔列表的字符串,有些记录是空字符串(非空)。 这是我们在将applicationId作为方面请求进行查询时收到的错误: 列“applicationId”(别名“applicationId”)的类型不兼

我们正在考虑将Sphinx升级到3.3.1版(目前为2.2.11版)。 现在,我们遇到了一些用于方面的MVA属性的问题

sphinx配置的片段:

sql\u attr\u multi=uint applicationId来自字段applicationId

db中的Appliantids列是包含逗号分隔列表的字符串,有些记录是空字符串(非空)。 这是我们在将applicationId作为方面请求进行查询时收到的错误:

列“applicationId”(别名“applicationId”)的类型不兼容 穿过碎片


我们想知道这是否是由于在新的Sphinx版本中处理空记录的方式不同造成的?

听起来您在不同的索引中定义了不同的“applicationId”属性。(碎片是索引部分的另一个名称)


应在索引的所有部分使用sql\u attr\u multi。即使它索引一个空字符串,它也应该将其索引为一个空列表。

我确实检查了所有节点的配置,并且该属性在所有实例中都是正确的。所以这不是问题所在。同样,同样的配置在Sphinx2.2.11上运行良好