Настройка group_concat_max_len в конфигурации Sphinx не применяется

Я столкнулся с проблемой, из-за которой наши SQL-запросы Sphinx усекаются. Это было связано с ограничением по умолчанию для функции Group Concat в MySQL 1024 байта.

Я использовал следующее в моем Sphinx.conf, чтобы исправить эту проблему:

sql_query_pre = SET SESSION group_concat_max_len = 10000

Это устранило проблему на моем локальном компьютере. Однако я обновил sphinx.conf на нашем промежуточном сервере и выполнил команду:

indexer --config sphinx.staging. Версия сервера: CentOS Linux, выпуск 7.2.1511 Mysql: libmysql - 5.5.47-MariaDB (локальная версия: libmysql - mysqlnd 5.0.10)

Я не особо разбираюсь в Sphinx, поэтому, возможно, пропустил какой-то очевидный шаг. Кроме того, мы не хотим изменять ограничения по умолчанию в нашей конфигурации MySql, поскольку они обеспечивают некоторую защиту в других ситуациях.

0
задан 21 June 2016 в 16:07
1 ответ

Проблема заключалась в том, что если у вас есть общий раздел конфигурации, который содержит:

исходный код sCommon sql_query_pre = SET SESSION group_concat_max_len = 10000

, но, следовательно, в дочернем разделе конфигурации, который наследует общую конфигурацию, определите другой параметр sql_query_pre:

source sUsers: sCommon sql_query_pre = SET NAMES utf8

они перезапишут любые настройки, которые были применены в общей конфигурации, и, следовательно, общая конфигурация не будет применена.

0
ответ дан 5 December 2019 в 10:15

Теги

Похожие вопросы