
Боб
06.01.2017
19:56:58
Алексей, спасибо большое.

Igor
06.01.2017
19:57:54

Боб
06.01.2017
19:59:12
а что за сми2?

Igor
06.01.2017
20:00:23
https://github.com/smi2

Google

Igor
06.01.2017
20:10:59
а, нет. я вспомнил, arrayUniq считает кол-во уникальных элементов, а не их значения

Alexey
06.01.2017
20:12:29
Можно написать через arrayFilter и arrayEnumerateUniq.
Или arrayReduce('groupUniqArray', arr).

Igor
06.01.2017
20:13:24
ага, я так и сделал вроде в итоге.. просто вспомнилось, что нет отдельной. спасибо!

f1yegor
06.01.2017
23:33:38
Тут есть создатели clickhouse-grafana?

Alexey
07.01.2017
19:29:23
как я понял это кто-то англоговорящий, вряд ли тут до них достучаться можно

Nikolay
07.01.2017
19:50:37

Renat
07.01.2017
21:08:08
по какой причине метрика ClickHouse.ProfileEvents.MergesTime в графите может резко вырасти?

f1yegor
07.01.2017
21:20:47

Anton
07.01.2017
22:35:43
Здравствуйте.
У меня возник странный вопрос/проблема.
# clickhouse-client --port 3306 -m
ClickHouse client version 1.1.54127.
Connecting to localhost:3306.
Connected to ClickHouse server version 1.1.54127.
:) SELECT 1
:-] ;
SELECT 1
??1?
На последней строчке умирает сам клиент и консоль.

Google

Anton
07.01.2017
22:36:25
ОС Дебиан wheezy.
если сделать clickhouse-client --port 3306 -E, то за 10 секунд выдает единицу.
И не виснет!
# clickhouse-client --port 3306 -E
ClickHouse client version 1.1.54127.
Connecting to localhost:3306.
Connected to ClickHouse server version 1.1.54127.
:) SELECT 1;
SELECT 1
Row 1:
??????
1: 1
1 rows in set. Elapsed: 10.025 sec.
если авторы смогут объяснить такое поведение, буду благодарен.
Кажется, я понял. Если СУБД не может отрезолвить hostname, то почему-то виснет на простых вещах, вроде DESC или select 1.
Наверное, не сильно баг, но как-то неприятно.

Maksim
08.01.2017
06:09:43
возможно оно бекрезолвит того, кто подключился?

Anton
08.01.2017
09:46:48
В моем случае все разрешилось прописыванием имени хоста в hosts

Maksim
08.01.2017
09:55:20
ну, это вообще элемент чистоплотности: хостнейм всегда должен резолвиться

Anton
08.01.2017
11:25:53
Разве? Кому должен?

Maksim
08.01.2017
12:21:34
Я не буду незнакомому человеку из интернета это доказывать =)

Alex
08.01.2017
12:31:05
получить по ip клиента его хостнейм нужно, чтобы проверить правила доступа, основанные на хостнеймах
у вас в users.xml случайно нет чего-то такого?

Alexey
08.01.2017
14:58:30
Насколько я помню, DNS резолвится только один раз, при соединении. Во время запроса не должен.

Anton
08.01.2017
18:11:47
у вас в users.xml случайно нет чего-то такого?
У меня все дефолтные конфиги. Спасибо за объяснение про права. Это вполне вменяемо.
Хотя кажется, что правильно по дефолту считать, что субд живет на локалхосте, который точно резолвиться.

Alexey
08.01.2017
18:15:23


Shine
08.01.2017
18:20:32
ребят, подскажите,а можно раннингдифференц заставить как-то обнулять результаты в рамках условия. Ну т е у нас есть например id_проекта, id_сессии, и таймстэмпы. Хочется чтобы раннингдифференц выдавал разницу времени только в пределах сессии. Если сессия другая, то считал заного. В новой сессии соответственно первая дельта должна быть равна нулю
одним запросом можно сделать ? )

Google

Anton
08.01.2017
18:22:21


Alexey
08.01.2017
18:26:04
ребят, подскажите,а можно раннингдифференц заставить как-то обнулять результаты в рамках условия. Ну т е у нас есть например id_проекта, id_сессии, и таймстэмпы. Хочется чтобы раннингдифференц выдавал разницу времени только в пределах сессии. Если сессия другая, то считал заного. В новой сессии соответственно первая дельта должна быть равна нулю
Нет. Потребность понятна - это хороший FR.
Также можно рассмотреть вариант - сделать функцию, которая считает difference массива. Тоже такого нет, но было бы полезно. Сейчас это можно получить только очень плохим способом, который я не буду приводить.
Также замечу, что сейчас такого вида функции (как runningDifference) работают исходя из допущения, что данные подаются на вход последовательно. Но интерпретатор запроса нигде не берёт во внимание наличие таких функций. То есть, они работают "на птичьих правах", что меня беспокоит. Это значит, что в дальнейшем нужно будет делать доработки специально для такого класса функций.


Anton
08.01.2017
18:27:55
Не реагировал ни на что. Совсем.
Да, bash.

Dmitry
08.01.2017
18:36:53
одним запросом можно сделать ? )
Только неоптимальные варианты типа поджойнить с запросом, в котором будут какие-то индикаторы начала сессий, наверное.
Вообще нам, например, был для ряда запросов нужен подобный индикатор и мы просто вынесли его в данные. Весу сильно не прибавилось, но запросам стало ощутимо легче.

Shine
08.01.2017
19:36:07
Алексей, понял. А что такое FR ? )

Igor
08.01.2017
19:37:23
feature request

Shine
08.01.2017
20:22:11
Алексей, подскажите, а вот по поводу этой особенности: https://groups.google.com/forum/#!topic/clickhouse/2JS_yzvYAHM не появилась еще возможность изменить поведедение ?
DB::Exception: Scalar subquery returned empty result, когда подзапрос возвращает 0 rows при group by

Alexey
08.01.2017
23:55:04
Ещё нет.

Igor
09.01.2017
07:28:27
а никто тут случайно не начинал заниматься поддержкой бинарного протокола на сторонних клиентах?
(я знаю только о недавно зачатом с++-клиенте от artpaul, но меня пайтон пока больше интересует)

Anton
09.01.2017
07:32:01
Так вроде нигде нет описания протокола. А реверсинжинеринг - это не правильно.

Pavel
09.01.2017
07:59:30

Anton
09.01.2017
08:04:31
А udp есть в планах?

Pavel
09.01.2017
08:07:55
А udp есть в планах?
Насколько мне известно, нет. А почему хочется именно его? С ним же есть проблема, что он не гарантирует доставку всех пакетов, соответственно, придётся, кое-что надстраивать. Получится что-то похожее на tcp. В это есть и свои плюсы, но тут стоит идти от конкретных потребностей.

Anton
09.01.2017
08:08:58
Ну например, это хорошо, когда много хостов хочет что-то записать в субд. Настолько, что не хватит tcp.
Да, нужно делать костыли поверх. Но что делать.

Google

f1yegor
09.01.2017
08:09:39
Вставляйте пачками тогда
В смысле ещё большими пачками

Anton
09.01.2017
08:10:24
Постоянно отключаться и подключаться с пачки машин?

Maxim
09.01.2017
08:10:36
Если только сделать отдельного демона, который по udp будет пакеты ловить, в пакеты собирать и с некоторой периодичностью писать в CH

Anton
09.01.2017
08:10:37
Ну, конечно, тоже вариант.

Renat
09.01.2017
08:12:19

Maxim
09.01.2017
08:12:44
О прокси.
Так можно и через http писать

Vladimir
09.01.2017
08:13:05

Pavel
09.01.2017
08:35:58

Shine
09.01.2017
09:11:00
А кто-нибудь сталкивался с такой ошибкой при попытке ребутнуть кликхаус ?
sudo clickhouse-server restart
POCO ERROR: File not found: config.xml
File not found: config.xml
помогает только полная перезагрузка сервера

Igor
09.01.2017
09:11:55
:O а через service не?
service clickhouse-server restart

Shine
09.01.2017
09:12:58
блин, умственная усталость ))
Игорь, спасибо

Anton
09.01.2017
09:15:01

Igor
09.01.2017
09:21:16
но исходники же в опенсорсе, это даже реверс инжинирингом как-то с натяжкой можно назвать, имхо.
в core/protocol.h в комментах даже базовые принципы работы протокола описаны
в исходниках перечислено всего шесть версий, которые как-то влияют на работу клиента с сервером, например

Google

Igor
09.01.2017
09:22:12
я не спорю, что костылить свои решения это не очень хорошо в плане того, что надо будет следить за совместимостью, но за ней так или иначе надо будет следить, разве нет?

r
09.01.2017
10:19:43
Доброго дня. Наблюдаю такую ошибку
{
"log": "2017.01.09 10:16:44.606 [ 7 ] <Error> sms.outbox (Merger): Part 20161209_20161210_147824_258681_584 intersects previous part\n",
"stream": "stderr",
"time": "2017-01-09T10:16:44.607102712Z"
}
Что могло привести к такому поведению и как с этим бороться?

Alexey
09.01.2017
11:53:28

Igor
09.01.2017
12:06:13
в новых версиях - насколько новых, хотя бы примерно?)
и актуальна ли еще рекомендация "не чаще одного инсерта в секунду"?

Alexey
09.01.2017
12:07:10
Где-то полтора месяца назад - середина ноября.
Актуальна.

r
09.01.2017
12:19:15

Maxim
09.01.2017
13:22:42

Igor
09.01.2017
13:23:09
это да, но это слишком скучно, мне приключений захотелось!

Alexey
09.01.2017
14:36:23

Renat
09.01.2017
16:43:40
почти целые сутки? в это время перезапустили сервер. Может быть конечно просто так совпало, что он в это же время завершился.

Alexey
09.01.2017
17:35:01

Anton
09.01.2017
19:27:08

Igor
09.01.2017
19:29:22
я бы тоже предпочел, но чего нет - того нет ¯\_(ツ)_/¯

Виктор
09.01.2017
19:29:33
В чем проблема HTTP?
Если кто-то сможет это сформулировать, можно подумать
Мы пока что не столкнулись ни с какими проблемами.

Igor
09.01.2017
19:30:03
мне очень хочется прогресса выполнения запроса
я формулировал в https://github.com/yandex/ClickHouse/issues/208