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

Всем привет, после рестарта одной из 3х нод кластера, сломалась

репликаци одной таблицы на этой ноде, я уже встречался с такой проблемой, обычно она решалась таким алгоритмом:
DETACH TABLE <db.table>
SYSTEM DROP REPLICA '<replica name>' FROM ZKPATH '/path/to/tables/in/zk'
ATTACH TABLE <db.table>
SYSTEM RESTORE REPLICA <db.table>

но в этот раз запрос ATTACH TABLE свалился в ошибку: Code: 999. DB::Exception: Received from :9000. DB::Exception: Can't get data for node /clickhouse/tables/db/table/replicas/ch-3/columns: node doesn't exist (No node). (KEEPER_EXCEPTION)
после чего я попытался пересоздать таблицу, но четно:

DROP TABLE db.table SYNC
Code: 60. DB::Exception: Received from :9000. DB::Exception: Table db.table doesn't exist. (UNKNOWN_TABLE)

CREATE TABLE db.table
Code: 57. DB::Exception: Received from :9000. DB::Exception: Table db.table already exists (detached). (TABLE_ALREADY_EXISTS)

подкскажите пожалуйста, как можно восстановить репликацию?

16 ответов

6 просмотров

zookeeper или clickhouse-keeper?

Roman-Ivanov Автор вопроса
Roman Ivanov
zookeeper

Одна нода ZK или несколько?

Roman-Ivanov Автор вопроса
Roman Ivanov
3

смотрите логи ZK на тему потери кворума и того как он восстановился ... может лидер не так выбрался... и часть данных потерялась...

Roman-Ivanov Автор вопроса

лидер выбрался ошибок в логах нет

Roman Ivanov
лидер выбрался ошибок в логах нет

там не ошибки... там типа что нибудь тип вот новый лидер... щас мы с него снапшот раскатим на все остальные инстансы ZK

Roman-Ivanov Автор вопроса
Slach [altinity]
там не ошибки... там типа что нибудь тип вот новый...

ладно, по логам не ясно ничего там виден процесс выбора, по итогу лидер выбран, что теперь с этим можно сделать?

Roman Ivanov
ладно, по логам не ясно ничего там виден процесс в...

еще раз DETACH TABLE ... и SYSTEM DROP REPLICA `ch-3' FROM ZKPATH '/clickhouse/tables/db/table' после этого SELECT * FROM system.zookeeper WHERE path='/clickhouse/tables/db/table/replicas'

Roman-Ivanov Автор вопроса

1 Table db.table doesn't exist. (UNKNOWN_TABLE) 2. результат есть, выдача большая, на что конкретно можно обратить внимание?

Roman Ivanov
1 Table db.table doesn't exist. (UNKNOWN_TABLE) 2....

На то что ch-3 нет в репилках FORMAT Vertical используйте чтобы лучше выдачу видеть и понимать

Roman-Ivanov Автор вопроса

явно этого не нашел, вот что-то похожее Row 10: ─────── name: replicas value: last added replica: ch-3 czxid: 8592328591 mzxid: 6438328841766 ctime: 2022-10-03 18:10:03 mtime: 2023-05-22 16:31:30 version: 17 cversion: 33 aversion: 0 ephemeralOwner: 0 dataLength: 24 numChildren: 3 pzxid: 6438328841766

Roman Ivanov
явно этого не нашел, вот что-то похожее Row 10: ─...

выглядит как кусок вывода SELECT * FROM system.zookeeper WHERE path='/clickhouse/tables/db/table' вместо SELECT * FROM system.zookeeper WHERE path='/clickhouse/tables/db/table/replicas'

Roman-Ivanov Автор вопроса
Slach [altinity]
выглядит как кусок вывода SELECT * FROM system.zo...

cорри так и есть да реплика есть в выводе Row 2: ────── name: ch-3 value: czxid: 6438328841766 mzxid: 6438328841766 ctime: 2023-05-22 16:31:30 mtime: 2023-05-22 16:31:30 version: 0 cversion: 437 aversion: 0 ephemeralOwner: 0 dataLength: 0 numChildren: 3 pzxid: 6446794002293

Roman Ivanov
cорри так и есть да реплика есть в выводе Row 2:...

тогда непонятно если таблицы в system.tables нет то вы уверен что правильно SYSTEM DROP REPLICA 'ch-3' FROM ZKPATH сделали?

Roman-Ivanov Автор вопроса
Slach [altinity]
тогда непонятно если таблицы в system.tables нет ...

я проверил запрос он верный, но я попытался вновь выполнить DETACH TABLE, SYSTEM DROP REPLICA, ATTACH TABLE и оно отработало! не знаю что помогло, я много чего делал, но допускаю что виновата тут смена лидера зукипера

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

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

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
Всем вечера. Подскажите как лучше сделать. делаю на Д10 Например будет база данных на SQLite. в ней будет много таблиц. более 50шт Типа справочник. Содержать ID Name Id p...
Андрей Т 🐎
10
А если для werf организовать отдельный репозиторий, а сервисы из проекта подключить как симлинки? И симлинки в гитигнор добавить?
Dmitriy Andreev
13
Всем здравствуйте!) У меня такой вопрос. Есть два роута, роут1 и роут2. Они связаны с очередью some_queue. По задаче предполагается, что есть два паблиша. Паблиш1 отправляет...
Format
10
Ребят, всем привет. Недавно начал знакомиться с werf с целью автоматизировать сборку локальных dev стендов. Прошел гайд, почитал статьи на хабре. Появилось некоторое понимание...
Dmitriy Andreev
4
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
Добрый день! Хочу спросить совета. Хочется в скрипт добавить некую конструкцию, что скрипт создал файл, который нужно потом скопировать в определенное место. Нашел такой сп...
Mikhail
4
Вопрос по WIN32: Насколько я понимаю то все функции win32 привязаны к объектам операционной системы. Например консоль, файл, кисть, окна итд. Следовательно функции win32 упра...
Tommy Vercetti
6
in telegram can i have multiple username? so instead of having multiple account for example one for work, one for friend and one for family with three diff numbers. using one ...
Mr Thieves
6
кто-то пользуется компонентами rx ? как их лучше ставить, через OPM? (lazarus)
Iluha Companets
15
Карта сайта