Size: a a a

ClickHouse не тормозит

2021 February 12

C

CHIP in ClickHouse не тормозит
Slach
Но валится как то очень странно,
при попытке освободить соединение с другим clickhouse сервером


DB::RemoteQueryExecutor::finish

потом
DB::MultiplexedConnections::drain()
потом
DB::MultiplexedConnections::receivePacketUnlocked
потом
DB::Connection::receivePacket

и в нем уже куда то читает из памяти которая недоступна

так не должно быть

там сколько НОД в кластере?
обновления какие то на все ноды накатили или только на некоторые?

вот этот удаленный сервер он точно такой же версии или нет?
я хз что они там творили
источник

C

CHIP in ClickHouse не тормозит
анархия)))
источник

S

Slach in ClickHouse не тормозит
CHIP
анархия)))
я вопросы перечислил было бы не плохо получить на них ответ
источник

C

CHIP in ClickHouse не тормозит
Slach
я вопросы перечислил было бы не плохо получить на них ответ
я соберу ответ
источник

AS

Alex S in ClickHouse не тормозит
А если я вставляю в таблицу из которой читает MV и MV выдала ошибку, то вся транзакция отменяется?

Может такое, что есть триггер просто перекладывающий из A в B (одинаковая схема) и в A данные успешно добавились (их можно прочесть), а в B триггер не переложил?
источник

S

Slach in ClickHouse не тормозит
Alex S
А если я вставляю в таблицу из которой читает MV и MV выдала ошибку, то вся транзакция отменяется?

Может такое, что есть триггер просто перекладывающий из A в B (одинаковая схема) и в A данные успешно добавились (их можно прочесть), а в B триггер не переложил?
нет не отменяется
просто нет вставки в таблицу которая под MV лежит
в родительскую таблицу вставка пройдет

в clickhouse нет транзакций
источник

AS

Alex S in ClickHouse не тормозит
Slach
нет не отменяется
просто нет вставки в таблицу которая под MV лежит
в родительскую таблицу вставка пройдет

в clickhouse нет транзакций
А если две MV и одна выдала ошибку? Ладно, это можно проверить(

Спасибо
источник

S

Slach in ClickHouse не тормозит
Alex S
А если две MV и одна выдала ошибку? Ладно, это можно проверить(

Спасибо
тоже самое, первая вставит, вторая нет
я же сказал транзакций НЕТ

MV это не транзакционный AFTER INSERT TRIGGER
который работает с куском данных который поступил в инициирующую таблицу по INSERT

каскадные MV тоже отдельно работают
источник

AS

Alex S in ClickHouse не тормозит
Slach
тоже самое, первая вставит, вторая нет
я же сказал транзакций НЕТ

MV это не транзакционный AFTER INSERT TRIGGER
который работает с куском данных который поступил в инициирующую таблицу по INSERT

каскадные MV тоже отдельно работают
CREATE TABLE A (
   a String
) ENGINE = MergeTree()
ORDER BY a
PRIMARY KEY a


CREATE TABLE B (
   a String
) ENGINE = MergeTree()
ORDER BY a
PRIMARY KEY a


CREATE TABLE C (
   a UUID
) ENGINE = MergeTree()
ORDER BY a
PRIMARY KEY a


CREATE MATERIALIZED VIEW A2B TO B (
 a String
) AS
SELECT
 a as `a`
FROM
 A


CREATE MATERIALIZED VIEW A2C TO C (
 a UUID
) AS
SELECT
 toUUID(a) as `a`
FROM
 A


Попробовал вставить INSERT INTO A (a) VALUES ('djskdjsd')

В A вставилось, в B и C не вставилось
источник

C

CHIP in ClickHouse не тормозит
Slach
Но валится как то очень странно,
при попытке освободить соединение с другим clickhouse сервером


DB::RemoteQueryExecutor::finish

потом
DB::MultiplexedConnections::drain()
потом
DB::MultiplexedConnections::receivePacketUnlocked
потом
DB::Connection::receivePacket

и в нем уже куда то читает из памяти которая недоступна

так не должно быть

там сколько НОД в кластере?
обновления какие то на все ноды накатили или только на некоторые?

вот этот удаленный сервер он точно такой же версии или нет?
- 7 нод
- о каких обновлениях речь?
версии везде одинаковы
источник

S

Slach in ClickHouse не тормозит
CHIP
- 7 нод
- о каких обновлениях речь?
версии везде одинаковы
ну об обновлениях версии clickhouse

7 нод как то не симметрично
почему 7?

сколько шардов? Тоже 7 и в каждом по одной реплике?

облако или свое железо?
на своем железе с памятью все впорядке?
источник

C

CHIP in ClickHouse не тормозит
>>>сколько шардов? Тоже 7 и в каждом по одной реплике?
всё верно 7 шардорв по одной реплике
>>> не симметрично почему 7?
как я со стороны вжу что они их добавляют по мере необходимости
>>> облако или свое железо?
Своё
>>> на своем железе с памятью все впорядке?
пару раз было ООМ, но не связано с этими 5тиминутными рестартами
источник

S

Slach in ClickHouse не тормозит
Alex S
CREATE TABLE A (
   a String
) ENGINE = MergeTree()
ORDER BY a
PRIMARY KEY a


CREATE TABLE B (
   a String
) ENGINE = MergeTree()
ORDER BY a
PRIMARY KEY a


CREATE TABLE C (
   a UUID
) ENGINE = MergeTree()
ORDER BY a
PRIMARY KEY a


CREATE MATERIALIZED VIEW A2B TO B (
 a String
) AS
SELECT
 a as `a`
FROM
 A


CREATE MATERIALIZED VIEW A2C TO C (
 a UUID
) AS
SELECT
 toUUID(a) as `a`
FROM
 A


Попробовал вставить INSERT INTO A (a) VALUES ('djskdjsd')

В A вставилось, в B и C не вставилось
возможно я ввел вас в заблуждение, извините
там может у вас сначала A2C выбрался и упал с ошибкой
или реально там когда все триггеры MV стартуют
то если хоть один упал остальные тоже откатываются

но вроде как планируются улучшения
https://github.com/ClickHouse/ClickHouse/issues/19352
источник

S

Slach in ClickHouse не тормозит
CHIP
>>>сколько шардов? Тоже 7 и в каждом по одной реплике?
всё верно 7 шардорв по одной реплике
>>> не симметрично почему 7?
как я со стороны вжу что они их добавляют по мере необходимости
>>> облако или свое железо?
Своё
>>> на своем железе с памятью все впорядке?
пару раз было ООМ, но не связано с этими 5тиминутными рестартами
рестарты всегда на разных запросах или на одном и том же?
запросы однотипные?
источник

S

Slach in ClickHouse не тормозит
CHIP
>>>сколько шардов? Тоже 7 и в каждом по одной реплике?
всё верно 7 шардорв по одной реплике
>>> не симметрично почему 7?
как я со стороны вжу что они их добавляют по мере необходимости
>>> облако или свое железо?
Своё
>>> на своем железе с памятью все впорядке?
пару раз было ООМ, но не связано с этими 5тиминутными рестартами
рестарт только на одном сервере? остальные ОК?

запрос с которого падает
если его на другом сервере исполнить то все ок работает?
источник

C

CHIP in ClickHouse не тормозит
Slach
рестарты всегда на разных запросах или на одном и том же?
запросы однотипные?
да тот что выше
источник

C

CHIP in ClickHouse не тормозит
Slach
рестарт только на одном сервере? остальные ОК?

запрос с которого падает
если его на другом сервере исполнить то все ок работает?
да, только на одном сервере
источник

C

CHIP in ClickHouse не тормозит
Slach
рестарты всегда на разных запросах или на одном и том же?
запросы однотипные?
этот запрос выполнялся в цыкле, как мне говорили
источник

S

Slach in ClickHouse не тормозит
CHIP
да, только на одном сервере
1) SHOW CREATE TABLE stats708.events6892 - для ясности картины

2) memtest
источник

S

Slach in ClickHouse не тормозит
CHIP
этот запрос выполнялся в цыкле, как мне говорили
на других серверах такой запрос проходит ?
источник