184 похожих чатов

Добрый день! Обратил внимание, что есть много старых кусков в таблицах,

которые в соответствии с TTL уже должны были быть потерты. Они активны, количество строк (rows) везде 0. Refcount везде от 1-2, то есть эти куски ещё где-то используются, но не в запросах и не в слияниях.

Как понять, где используются эти куски? Почему они не потерлись?

4 ответов

16 просмотров

Парты остаются пустыми после ttl. By design. По причине Previously there was a hypotesis, that we can't drop any part from the middle of the list, because it will break merge algorithm. But I looked one more time to the related code and seems that it's ok. In ReplicatedMergeTreeMergePredicate there is a logic, that doesn't allow to assign merges to the range of parts if it has a gap beetween block numbers, and there are any virtual parts with block ranges from this gap (that meens, that parts in the gap are not present yet, but will apear later). If we completly remove part by DROP_RANGE entry in replication queue, no invariant will be broken, because now parts in one partition can have gaps in block numbers range Вот тут пытаются это исправить https://github.com/ClickHouse/ClickHouse/pull/13252

Никита-Макушников Автор вопроса
Denny [Altinity]
Парты остаются пустыми после ttl. By design. По пр...

Ок, спасибо! Как вариант, дропать их через DROP PARTITION? Или есть решение лучше?

Никита Макушников
Ок, спасибо! Как вариант, дропать их через DROP PA...

Можно дропать. Можно мержить. Можно забить. Как хотите.

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта