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

Есть кластер из 3 шардов по 2 реплики каждый. В

какой-то момент на 2 серверах закончилось место (недоглядели 🤷). Место почистили, но за время, пока оно закончилось, не писали данные в zookeeper и в clickhouse, соответственно.

Теперь есть рассинхрон а данных 2 реплик, а в логах полно записей вида:

2021.05.10 15:55:00.217590 [ 69 ] {} <Warning> info.data_meter_humidity_shard (ReplicatedMergeTreePartCheckThread): Found parts with the same min block and with the same max block as the missing part 202105_359932_359943_2. Hoping that it will eventually appear as a result of a merge.
2021.05.10 15:55:00.941870 [ 72 ] {} <Warning> info.data_meter_humidity_shard (ReplicatedMergeTreePartCheckThread): Checking part 202105_359932_359943_2
2021.05.10 15:55:00.977746 [ 72 ] {} <Warning> info.data_meter_humidity_shard (ReplicatedMergeTreePartCheckThread): Checking if anyone has a part 202105_359932_359943_2 or covering part.

Внимание, вопрос: как всё вылечить и заставить нормально работать дальше? 🙁

25 ответов

9 просмотров

внимательно прочитать что в system.replication_queue

Rodion-Baskakov Автор вопроса
Denny [Altinity]
внимательно прочитать что в system.replication_que...

Там очень много всего. На что именно смотреть?

Rodion Baskakov
Там очень много всего. На что именно смотреть?

https://kb.altinity.com/altinity-kb-setup-and-maintenance/altinity-kb-replication-queue https://github.com/ClickHouse/ClickHouse/issues/10368#issuecomment-616310015

Rodion-Baskakov Автор вопроса
Denny [Altinity]
https://kb.altinity.com/altinity-kb-setup-and-main...

А можете подсказать, как запрос из первой ссылки совместить с инструкциями из втррой? Тот запрос, что приводится для поиска частей, которые нужно удалить из ZK, не возращает ничего

Rodion Baskakov
А можете подсказать, как запрос из первой ссылки с...

покажите результат запроса к system_replication_queue

Rodion-Baskakov Автор вопроса
Denny [Altinity]
покажите результат запроса к system_replication_qu...

Он огромный 🤷 ┌─database─┬─table────────────────────────────┬─type────────┬─any(last_exception)─┬─any(postpone_reason)──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬─max(last_attempt_time)─┬─max(last_postpone_time)─┬─max_postponed─┬─max_tries─┬─min_tries─┬─count_err─┬─count_postponed─┬─count_executing─┬─count_all─┐ │ info │ io_status_shard │ GET_PART │ │ Not executing log entry queue-0003877012 for part 210602_2542222_2542222_0 because it is covered by part 210602_2537001_2557843_4287 that is currently executing. │ 2021-05-10 16:11:18 │ 2021-05-10 16:11:23 │ 9026 │ 1 │ 0 │ 0 │ 116299 │ 0 │ 120458 │ │ info │ io_status_shard │ MERGE_PARTS │ │ Not executing log entry queue-0003899021 of type MERGE_PARTS for part 210602_2537001_2557848_4288 because part 210602_2537001_2557843_4287 is not ready yet (log entry for that part is being processed). │ 2021-05-10 16:11:23 │ 2021-05-10 16:11:23 │ 15 │ 1 │ 0 │ 0 │ 39551 │ 3 │ 40223 │ │ info │ network_interface_log_shard │ GET_PART │ │ Not executing log entry queue-0001900136 for part 202105_599365_599365_0 because it is covered by part 202105_296053_623018_114354 that is currently executing. │ 2021-05-10 16:11:13 │ 2021-05-10 16:11:23 │ 13772 │ 3 │ 0 │ 0 │ 23066 │ 0 │ 24666 │ │ info │ data_meter_temperature_shard │ GET_PART │ │ Not executing log entry queue-0001852749 for part 202105_554488_554488_0 because it is covered by part 202105_290217_577559_107457 that is currently executing. │ 2021-05-10 16:11:13 │ 2021-05-10 16:11:22 │ 13982 │ 3 │ 0 │ 0 │ 22179 │ 0 │ 23686 │ │ info │ data_meter_wireless_health_shard │ GET_PART │ │ Not executing log entry queue-0000981079 for part 202105_294152_294152_0 because it is covered by part 202105_293674_306098_5598 that is currently executing. │ 2021-05-10 16:11:22 │ 2021-05-10 16:11:22 │ 7943 │ 1 │ 0 │ 41 │ 16729 │ 1 │ 19421 │ │ info │ data_meter_humidity_shard │ GET_PART │ │ Not executing fetch of part 202105_342475_342475_0 because 8 fetches already executing, max 8. │ 2021-05-10 16:11:21 │ 2021-05-10 16:11:21 │ 9920 │ 1 │ 0 │ 0 │ 13547 │ 1 │ 16724 │ │ info │ data_meter_wireless_health_shard │ MERGE_PARTS │ │ Not executing log entry queue-0000999066 for part 202105_293674_306089_5593 because it is covered by part 202105_293674_306098_5598 that is currently executing. │ 2021-05-10 16:11:22 │ 2021-05-10 16:11:22 │ 109 │ 1 │ 0 │ 21 │ 4917 │ 2 │ 5481 │ │ info │ data_meter_humidity_shard │ MERGE_PARTS │ │ Not executing log entry queue-0001205355 for part 202105_344659_354242_4804 because it is covered by part 202105_344659_359496_7917 that is currently executing. │ 2021-05-10 16:11:21 │ 2021-05-10 16:10:34 │ 120 │ 1 │ 0 │ 0 │ 3500 │ 1 │ 3977 │

Rodion-Baskakov Автор вопроса
Denny [Altinity]
покажите результат запроса к system_replication_qu...

│ info │ network_interface_log_shard │ MERGE_PARTS │ │ Not executing log entry queue-0001927252 for part 202105_296053_623037_114355 because it is covered by part 202105_296053_623703_114380 that is currently executing. │ 2021-05-10 16:11:23 │ 2021-05-10 16:09:50 │ 3 │ 1 │ 0 │ 0 │ 121 │ 1 │ 272 │ │ info │ data_meter_temperature_shard │ MERGE_PARTS │ │ Not executing log entry queue-0001878899 for part 202105_290217_577577_107458 because it is covered by part 202105_290217_577606_107460 that is currently executing. │ 2021-05-10 16:11:22 │ 2021-05-10 16:11:21 │ 12 │ 1 │ 0 │ 0 │ 74 │ 1 │ 224 │ │ info │ data_meter_electricity_shard │ GET_PART │ │ Not executing fetch of part 202105_588078_588078_0 because 8 fetches already executing, max 8. │ 2021-05-10 16:11:21 │ 2021-05-10 16:11:21 │ 9 │ 1 │ 0 │ 0 │ 7 │ 3 │ 7 │ └──────────┴──────────────────────────────────┴─────────────┴─────────────────────┴───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────────────────────┴─────────────────────────┴───────────────┴───────────┴───────────┴───────────┴─────────────────┴─────────────────┴───────────┘

Rodion-Baskakov Автор вопроса
Denny [Altinity]
system restart replica; на обоих репликах

Прошу прощения, а где именно выполнять эту команду?

Rodion-Baskakov Автор вопроса
Denny [Altinity]
это обычный SQL. я бы из клиента выполнял

Вот я так и попробовал, но получил это: cluster-node-02-01 🙂 SYSTEM RESTART REPLICA Syntax error: failed at position 23 (end of query): SYSTEM RESTART REPLICA Expected one of: START TTL MERGES, RELOAD CONFIG, RELOAD DICTIONARY, STOP FETCHES, FLUSH LOGS, RELOAD EMBEDDED DICTIONARIES, STOP DISTRIBUTED SENDS, STOP TTL MERGES, identifier, STOP REPLICATED SENDS, RELOAD SYMBOLS, STOP MOVES, START MOVES, STOP REPLICATION QUEUES, START DISTRIBUTED SENDS, SYNC REPLICA, STOP MERGES, START REPLICATED SENDS, START MERGES, DROP REPLICA, START FETCHES, START REPLICATION QUEUES, FLUSH DISTRIBUTED, RELOAD DICTIONARIES

Rodion-Baskakov Автор вопроса
Denny [Altinity]
system restart replicas я букву s забыл

Я выполнил. И что теперь должно произойти?

Rodion Baskakov
Я выполнил. И что теперь должно произойти?

изменилось что-нибудь в system.replication_queue?

Rodion-Baskakov Автор вопроса
Denny [Altinity]
изменилось что-нибудь в system.replication_queue?

Сейчас посмотрю… Но самое страшное, что в логах появилась надпись Table info.data_meter_temperature_shard doesn't exist

Rodion Baskakov
Сейчас посмотрю… Но самое страшное, что в логах по...

system restart replicas на доли секунды убирает таблицу из видимых

Rodion-Baskakov Автор вопроса
Denny [Altinity]
system restart replicas на доли секунды убирает та...

Проблема в том, что запрос этот я выполнил давно, а сейчас пытаюсь посчитать количество записей во всех репликах, и мне база говорит, что нет такой таблицы SELECT FQDN() AS node, COUNT() AS rows FROM clusterAllReplicas('cluster', info, data_meter_temperature_shard) GROUP BY node Query id: 23bdadb8-5da9-425a-9b5b-5c9f0a2e71a3 0 rows in set. Elapsed: 0.085 sec. Received exception from server (version 21.4.4): Code: 279. DB::Exception: Received from localhost:9000. DB::Exception: All connection tries failed. Log: There is no table `info`.data_meter_temperature_shard on server: cluster-node-02-02:9000 : While executing Remote.

Rodion-Baskakov Автор вопроса
Denny [Altinity]
attach table info.data_meter_temperature_shard

Это нужно на той ноде, на которой её нет, выполнять?

Rodion-Baskakov Автор вопроса
Denny [Altinity]
да

Это помогло, спасибо. Но пока рассинхров в данных никуда не делся, увы. Как и сообщения об ошибках в логах 🙁

Rodion Baskakov
Это помогло, спасибо. Но пока рассинхров в данных ...

кол-во select count() from system.replication_queue уменьшается ? выполните два раза подряд

Rodion-Baskakov Автор вопроса
Rodion-Baskakov Автор вопроса
Denny [Altinity]
На тысячи?

Да, постепенно

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

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

А чем вам питонисты не угодили?😂
.
79
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Привет, запускаю werf в dind в k8s, получаю ошибку на этапе build/beforeSetup: /.werf/stapel/embedded/bin/bash: /.werf/scripts/5898bdfe5214357d3706b879cc8d3d78460fb379607cbd...
florius0
7
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Dim Dim, [02.07.2024 11:07] DB 0x62 Dim Dim, [02.07.2024 11:07] DB 0x66 Dim Dim, [02.07.2024 11:07] кто пояснит что это?
Dim Dim
14
Ошибка: segmentation fault (core dumped) Код: pastebin.com/BEsNNSSV Сообщение от компилятора: отсутствует ОС: Arch Linux Ядро: x86_64 Linux 6.9.7-arch1-1 Процессор: Intel Cele...
sec
4
Ребят, а за скок можно впарить анон чат с апишкой и веб админкой ?
Eugene Неелов
15
Добрый день, чат. Мне в очередь из других RabbitMQ по shovel валятся метрики в формате текста для Prometheus. Помогите пожалуйста подружить RabbitMQ и Prometheus, чтобы он (...
Aleksey
4
@ahndmn @ayaw0_0 здарова, на чем пишете?
Aiwan \ (•◡•) / _bot
7
Кстати, я тут еще с одной темой столкнулся, вот учу я C++, на таком то ресурсе, а остальные постоянно советуют практиковаться, что то писать, проекты, но как писать если вот т...
aaswq1
7
Карта сайта