партицированием по неделям с TTL в 3 месяца на строки на какую-то дату. Я задним числом накидываю туда строки (за 6-7-8 месяцев). То есть предполагалось, что они добавятся, а потом удалятся. Прошло около 12-ти часов, но строки (партиции), которые полностью попадают в TTL не удалились. То есть я могу вызвать optimize на партицию и тогда данные удалятся, но будто сами они не хотят удаляться.
Вопрос: почему? ) Просто интересно узнать как это работает, точнее как работает алгоритм TTL
Версия Clickhouse ?
c 20.3.7.46 вроде починили это https://clickhouse.com/docs/en/whats-new/changelog/2020
Конкретно в этой версии чет не нашел Там тупо 4 багфикса и всё ) И то они не связаны с TTL (кмк)
http://minervadb.com/index.php/clickhouse-release-v20-3/
По идее есть такая настройка на каждую таблицу merge_with_ttl_timeout https://clickhouse.com/docs/en/engines/table-engines/mergetree-family/mergetree/#mergetree-query-clauses
Видел, но просто ТОЧНО прошло больше 4-х часов Или он там только по одной партиции "делитит"?
Посмотрите настройки таблицы
А как посмотреть настройки конкретной таблицы?
А вот я тоже задался таким вопросом 😂
Ttl eventual. Какая версия кх?
В system.parts есть поля ttl_delete_min/max посмотрите что у тех партов. TTL мержер обрабатывает ограниченное кол-во партов за раз возможно до них не дошла очередь
Не нашел такие колонки там Да и не гуглятся похожие )
Desc system.parts
Нашел delete_ttl_info_min/delete_ttl_info_max
Да, вы правы, спасибо большое
Обсуждают сегодня