Очистка подготовленного кеша выписок в cassandra 3.0.10 - PullRequest
0 голосов
/ 30 мая 2018

У нас установлена ​​система cassandra 3.0.10.Разработчики допустили некоторые ошибки кодирования при подготовке заявлений.В результате подготовленный кэш операторов переполняется, и мы всегда получаем сообщение об ошибке.Ошибка показана ниже:

INFO [ScheduledTasks:1] 2017-12-07 10:38:28,216 QueryProcessor.java:134 - 7 prepared statements discarded in the last minute because cache limit reached (8178944 bytes) 

Мы исправили подготовленные операторы и хотели бы очистить кэш подготовленных операторов, чтобы начать с нуля.Мы остановили и перезапустили экземпляр cassandra, но количество подготовленных операторов не было сброшено.

Cassandra 3.0.10 установлена ​​на centos, и мы используем svcadm disable / enable cassandra для остановки / запуска cassandra.

Я заметил, что в более поздней версии cassandra, например, 3.11.1, под системной клавишей есть таблица ready_statements.Завершение работы cassandra и удаление файла ${CASSANDRA_HOME}/data/data/system/prepared_statements-*, а затем перезапуск cassandra фактически сбрасывает кэш подготовленного состояния.

Оцените любую помощь по этому вопросу.

Спасибо.

Обновление: 2018-06-01 В настоящее время мы используем обходной путь для очистки подготовленных операторов, связанных с определенными таблицами, путем удаления индекса и повторного создания индекса в таблице.Это отбрасывает подготовленные операторы, которые имеют зависимости от определенного индекса.На данный момент это самое большее, что мы можем сделать.Проблема в том, что если это не сработает для таблиц, для которых индекс не определен.

Все еще нужен лучший способ сделать это, например, какая-нибудь команда администратора для очистки кэша.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...