
Tatiana
14.06.2017
17:02:39
Нет

Alexey
14.06.2017
17:14:39
У вас записываются метрики в Graphite?

Tatiana
14.06.2017
17:15:11
записываются в Zabbix, правда не все

Alexey
14.06.2017
17:18:32
Посмотрите ClickHouse.Metrics.LeaderReplica, ClickHouse.ProfileEvents.LeaderElectionAcquiredLeadership для обеих реплик. Если по первому графику видно, что они перекрывались хоть в какой-то момент времени - значит это баг на нашей стороне.

Google

Tatiana
14.06.2017
17:27:25
Эти не записываются. Я включу, такое наверняка повторится.
А можно как-то починить?

Alexey
14.06.2017
17:32:29
Можно, но не очень удобно.

Tatiana
14.06.2017
17:33:07
Мне подходит неудобно :)
Кстати такая же штука случалась с таблицей, где всего одна реплика была

Alexey
14.06.2017
17:35:45
Где всего одна реплика была всегда?

Tatiana
14.06.2017
17:35:50
да
тестовый сервер

Alexey
14.06.2017
17:36:14
Но там ведь было слегка другое сообщение?

Tatiana
14.06.2017
17:36:20
нет, такое же

Alexey
14.06.2017
17:37:08
> Checking if anyone has part covering 20170606_20170606_238257_238372_22.
Found all blocks for missing part 20170606_20170606_238257_238372_22. Will wait for them to be merged.
Это выводится, если есть другие реплики...

Tatiana
14.06.2017
17:37:41
Found all blocks for missing part 20170413_20170413_43744_43847_18. Will wait for them to be merged.
И все-таки, как починить?

Vitaliy
14.06.2017
17:41:42
почему когда вылетает ошибка "Considering to remove broken part /var/lib/clickhouse//data/..... because it's impossible to repair." партиция не переезжает в папку "detached"?

Google

Alexey
14.06.2017
17:44:45

Tatiana
14.06.2017
17:44:59
Хорошо, спасибо


Andrey
14.06.2017
18:33:47
Вот и меня настигла проблема broken pipe
2017.06.14 18:16:04.011259 [ 2 ] <Error> hits_d.Distributed.DirectoryMonitor: Code: 210, e.displayText() = DB::NetException: I/O error: Broken pipe: while reading from socket (10.138.208.224:9000), e.what() = DB::NetException, Stack trace:
0. clickhouse-server(StackTrace::StackTrace()+0x16) [0x2969826]
1. clickhouse-server(DB::WriteBufferFromPocoSocket::nextImpl()+0x5ad) [0x297de7d]
2. clickhouse-server(DB::Connection::sendData(DB::Block const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0xe5) [0x2b6f365]
3. clickhouse-server(DB::Connection::sendQuery(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long, DB:
:Settings const*, DB::ClientInfo const*, bool)+0xc35) [0x2b709b5]
4. clickhouse-server(DB::RemoteBlockOutputStream::writePrefix()+0x6a) [0x2c25eda]
5. clickhouse-server(DB::StorageDistributedDirectoryMonitor::processFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x6f9) [0x2aa4cf9]
6. clickhouse-server(DB::StorageDistributedDirectoryMonitor::findFiles()+0x14c) [0x2aa680c]
7. clickhouse-server(DB::StorageDistributedDirectoryMonitor::run()+0xc5) [0x2aa6d05]
8. clickhouse-server() [0x36744ef]
9. /lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba) [0x7f3c3ac906ba]
10. /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7f3c3a2b182d]
простая Distributed таблица на 2х серверах
На втором сервере:
2017.06.14 09:43:36.158877 [ 19 ] <Error> ServerErrorHandler: Code: 101, e.displayText() = DB::NetException: Unexpected packet from client, e.what() = DB::NetException, Stack trace:
0. clickhouse-server(StackTrace::StackTrace()+0x16) [0x2969826]
1. clickhouse-server(DB::Exception::Exception(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)+0x1f) [0x108f49f]
2. clickhouse-server(DB::TCPHandler::receiveHello()+0xc8) [0x10a34f8]
3. clickhouse-server(DB::TCPHandler::runImpl()+0x1cc) [0x10a721c]
4. clickhouse-server(DB::TCPHandler::run()+0x2b) [0x10a827b]
5. clickhouse-server(Poco::Net::TCPServerConnection::start()+0xf) [0x3274d5f]
6. clickhouse-server(Poco::Net::TCPServerDispatcher::run()+0x13b) [0x327b19b]
7. clickhouse-server(Poco::PooledThread::run()+0xb7) [0x34e6e07]
8. clickhouse-server(Poco::ThreadImpl::runnableEntry(void*)+0xa5) [0x34b2e45]
9. /lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba) [0x7efc71ac56ba]
10. /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7efc710e682d]


Vitaliy
14.06.2017
18:56:14


Andrey
14.06.2017
18:56:34
Nullable нет. Версию сейчас скажу
1.1.54236
Таблица маленькая. До 100мб если считать объём внутри clickhouse

Vitaliy
14.06.2017
18:59:50
Ок, просто в относительно старой версии c Nullable-колонками похожая проблема с Unexpected packet была.

Andrey
14.06.2017
19:01:27
Не, у меня их нет. В кластере вообще по сути 1 таблица. На каждом из серверов локальные. Плюс на каждом из серверов distributed поверх локальных. Движок mergetree

Alex
14.06.2017
19:23:38
Фикс бага со вставкой в Distributed таблицу в мастере. Постараемся на этой неделе сделать релиз.

Andrey
14.06.2017
19:33:25
А деталей не расскажете? В чем была проблема?

Alex
14.06.2017
19:37:40
Если при вставке обрывалось соединение до удалённого инстанса, то плохое соединение оставалось в пуле и не делалось попытки реконнекта.
Соответственно последующие вставки не проходили.

Andrey
14.06.2017
19:38:35
Ага, понятно, логично. Спасибо!

Александр
14.06.2017
19:59:38
Всем привет! Выкатили новую версию php клиента https://github.com/the-tinderbox/ClickhouseClient. Подробности в релизе.
Так же выкатили обещанный билдер запросов с fluent подобным интерфейсом
https://github.com/the-tinderbox/ClickhouseBuilder
Можно пользоваться как standalone так и подключить в Laravel/Lumen

Google

Александр
14.06.2017
20:03:17
Если у кого то будут вопросы, пожелания - все в личку :) Если будет что добавить, то кидайте pull-реквесты

f1yegor
14.06.2017
20:36:24
может быть дурацкий вопрос: когда я начинаю стримить результаты какой-то query, то курсор пойдет только по данным на тот момент, или вновь добавленные записи могут всплыть?

Александр
14.06.2017
20:37:38
Я так полагаю, что результат хранится в оперативке
Ну т.е. ничего не должно всплыть
Это монга по курсору ходит и то, даже она вроде как не выкидывает вновь добавленные данные
Хотя на счет КХ я могу ошибаться :)

Alex
14.06.2017
21:07:12
При выполнении запроса берётся снапшот данных таблицы.
То есть добавляемые данные всплывать не должны.

f1yegor
14.06.2017
21:09:47
спасибо

Ksu
14.06.2017
21:41:54
А по поводу авторизации через АД можете что - нибудь подсказать?

Ivan
15.06.2017
06:53:21
Коллеги, батч инсерт INSERT INTO $table FORMAT Values и получаю иногда Code: 32, e.displayText() = DB::Exception: Attempt to read after eof, e.what() = DB::Exception
Кто нибудь сталкивался с такой проблемой?

Felixoid
15.06.2017
07:09:57

Ivan
15.06.2017
07:11:12
@Felixoid я сам просто шлю батчи на разные сервера
такой типа round-robin

Александр
15.06.2017
07:11:38
такой типа round-robin
В КХ вроде был встроенный механизм балансировки, могу ошибаться, но в документации есть https://clickhouse.yandex/docs/ru/settings/settings.html#load-balancing

Ivan
15.06.2017
10:33:58
Разобрался, это потому что вместе DateTime передаю пустую строку
такой вопрос теперь, а можно ли передать как то null?

Александр
15.06.2017
10:45:58
Да, есть Nullable колонки https://github.com/yandex/ClickHouse/blob/master/dbms/tests/queries/0_stateless/00395_nullable.sql

Google

Александр
15.06.2017
10:46:06
Там в тесте есть примеры

Igor
15.06.2017
10:46:10
но они в бете пока

Pavel
15.06.2017
12:13:53
sorry :/

Alexander
15.06.2017
12:16:25
а когда релиз планируется с багфиксом broken pipe?

Evgenii
15.06.2017
12:29:21
Добрый день! А как то можно скрыть пароль пользователя в логах?

Andrey
15.06.2017
12:46:16

Александр
15.06.2017
12:46:57
Это супер новости! А по багу с оптимизацией запросов ничего не известно пока?

Alexander
15.06.2017
15:36:38
Я правильно понимаю что вставка из одного хэндла однопотоковая?

Alex
15.06.2017
15:42:57
Имеется в виду одно соединение?

Alexander
15.06.2017
15:45:37
Да
Т.е. вижу что в сеть не упирается, но в 4 потока в 4 раза быстрее.

Александр
15.06.2017
15:46:35
Ну так написано в доке, что в несколько потоков вставка быстрее

Alex
15.06.2017
15:46:45
Ага, однопоточная
Причём узкое место часто сортировка

Александр
15.06.2017
15:47:16
Ага и я так полагаю уже измусоленные unix таймштампы вместо времени? )

Alexander
15.06.2017
15:47:24
Ага, понял, спасибо. Просто в буфер вставляю, он вроде дублируется в памяти по потокам.

Тефтеля
15.06.2017
15:48:37
Host http://our-clickhouse:8123 is cooling down for 1 seconds
NoAvailableHostsException: No available hosts among: ['http://our-clickhouse:8123']
тоже из-за больших вставок в одном запросе?)

Pavel
15.06.2017
15:51:02
сотировка по времени?

Alex
15.06.2017
15:51:16

Google

Pavel
15.06.2017
15:52:15
ммм, я видел такое в InfluxDB
они как опцию предлагают сортировать на клиенте

Тефтеля
15.06.2017
15:52:32

Alex
15.06.2017
15:54:17
Если уже данные уже отсортированы в нужно порядке, вставка будет быстрее. Но специально сортировать мало смысла - вряд ли это получится эффективнее, чем в ClickHouse

Pavel
15.06.2017
15:57:27
резонно

Alex
15.06.2017
16:02:08
python clickhouse
Какой из? Их несколько вроде... И наверно лучше у авторов драйвера спросить, что когда такое бывает.

Алекс
15.06.2017
16:02:22
Всем привет. Тестируем СН, жутко тормозит запрос вида select * from test where id > x order by id limit y. По статистике видно что идёт чтение всей таблицы целиком. Можно ли что-нибудь настроить, чтобы такой запрос отрабатывал быстро?

Александр
15.06.2017
16:02:54
В первичный ключ если только добавить нужную колонку
Либо выбирать не все колонки
т.е. не по звездочке
Много колонок?

Тефтеля
15.06.2017
16:03:40

Alex
15.06.2017
16:06:49
Вот код: https://bitbucket.org/ppodolsky/clickhouse-python/src/539ec7dd2165642e9424fd75fdd9e8eda3e8504e/clickhouse/database.py?at=default&fileviewer=file-view-default#database.py-114
на первый взгляд получается, что при любой ошибке такое
понять, что за ошибка, можно по строчке вида Error while requesting to %s: %s

Алекс
15.06.2017
16:08:04
Много колонок?
Id, date, string. В запросе конечно не пишу *. Написал тут для экономии места.