Перейти к публикации

InnoDB: проблема перехода


Рекомендованные сообщения

После перевода БД на движок InnoDB, на некоторых постах (видимо с большим кол-вом текста...) выдает ошибку БД:

 

Fatal error: Uncaught exception 'Exception' with message 'SafeMySQL: Too many words in a FTS phrase or proximity search. Full query: [SELECT p.id, p.autor, p.date, p.short_story, p.full_story, p.xfields, p.title, p.category, p.alt_name, p.allow_comm, p.comm_num, p.fixed, p.allow_main, p.symbol, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.related_ids, e.view_edit, e.editdate, e.editor, e.reason FROM `dle_post` p LEFT JOIN `dle_post_extras` e ON (p.id=e.news_id) WHERE approve AND NOT category IN ('42') AND MATCH (title, short_story, full_story, xfields) AGAINST ('Сравниваем! Обсуждение почасовой минимальной зарплаты в разных странах Сколько минимально зарабатывают и какая почасовая оплата в разных странах мира? На прошлой неделе фракция \\\"Справедливая Россия\\\" внесла в Госдуму законопроект о введе...

 

На движке MyISAM ничего подобного не было.

Версия MySQL 5.7.13

 

В чем может быть проблема и как ее исправить?

Ссылка на сообщение
Поделиться на других сайтах

Да ошибка означает что превышен лимит текста на поиск. Но в DLE приведенного вами запроса нет. А там где DLE использует полнотекстовый поиск, установлены соответствующие ограничения на количество текста. В вашем же случае очень похоже что используется какой то сторонний модуль, который не ограничивает размеры текста при поиске. 

 

DLE при ошибках MySQL выводит в каком файле и в какой строке произошел ошибочный запрос к БД. Что пишет у вас? Где произошла ошибка?

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
×
×
  • Создать...