aaa.my_table: DB::StorageReplicatedMergeTree::queueTask()::<lambda(DB::StorageReplicatedMergeTree::LogEntryPtr&)>: Code: 235, e.displayText() = DB::Exception: Part 202006_2175069_2175076_1 (state Committed) already exists, Stack trace:
Так же вижу такой варнинг в логах:
<Warning> aaa.my_table (ReplicatedMergeTreePartCheckThread): Found parts with the same min block and with the same max block as the missing part 202006_2186437_2195108_1948. Hoping that it will eventually appear as a result of a merge.
Таблица такая:
CREATE TABLE aaa.my_table
(
created Date,
ts DateTime,
event String,
taskTs DateTime
)
ENGINE ReplicatedMergeTree('/clickhouse/table/aaa/my_table', '{replica}')
PARTITION BY toYYYYMM(created)
ORDER BY (event, taskTs)
SETTINGS index_granularity = 8192
Реплик 10 штук, все пишут и читают.
Записей 2M строк в день. соответственно 60М в партиции
Репликация сильно не отстает вроде
Вопрос: Почему возникают такие ошибки (весьма часто - сотни раз в день)? Что за процесс происходит к которому это приводит?
Поможет ли уменьшение размера партиций например?
т.е. у вас 10 реплик, шардов нет, и distributed таблицы нет? логлевел trace? что показывает лог если прогрепать его по 202006_2175069_2175076_1 ?
про Warning надо опять же грепать лог и смотреть что в select * from system.replication_queue на всех репликах, возможно некоторые реплики не могут достучаться до некоторых реплик
Обсуждают сегодня