sphinx search indexer不会索引字段中的所有内容

时间:2013-04-12 14:43:10

标签: mysql sphinx thinking-sphinx

在MySQL数据库的配置中,sql_query似乎发生了奇怪的事情。 sphinx.conf中sql_query的相关部分如下:

sql_query = ... GROUP_CONCAT(DISTINCT IFNULL(`vendor_items`.`description`, '0') 
SEPARATOR ' ') 
AS `vendor_item_descriptions`,...

问题在于,在某些情况下,只有部分此description字段被编入索引。似乎索引到达某一点,然后不再对字段内容编制索引。我通过从一个特定项目的字段中搜索一堆单词来解决这个问题。似乎该项目的描述内容的前1/3被索引。我认为它可能是字符编码问题所以我剥离了任何不可打印的UTF-8字符的描述字段&重建索引。但没有运气。

是否有其他人遇到过此类问题或知道问题可能是什么?

1 个答案:

答案 0 :(得分:2)

我建议你看一下group_concat_max_len MySQL变量。

http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat

http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_group_concat_max_len

在sphinx术语中,可以使用sql_query_pre来更新会话的值