
Wolf
05.04.2018
06:36:19
селектам вообще зукипер не нужен
в чем прозрачность то , одинаковость реплик вы сами обеспечиваете если у вас нет зукипера
если вы про это конечнр

Yuri
05.04.2018
06:41:22
нет, мне не надо, чтобы на всех нодах было одинковое содержимое. нам достаточно. чтобы при обращении к любой выдавался полный сет со всех нод. вот этого хочется

Google

Alexander
05.04.2018
06:44:05
тогда у вас будут данные со всех нод в одном запросе

Wolf
05.04.2018
06:48:08

Yuri
05.04.2018
06:55:41

Kirill
05.04.2018
06:56:38

Гаврилов
05.04.2018
06:56:47
странно

Kirill
05.04.2018
06:58:11
странно
Скорее всего вы имеете ввиду обновление данных в таблице, тогда нет. Считайте что это про обновление данных по "F5" - можете писать и сразу же получать "актуальный" результат

Гаврилов
05.04.2018
07:00:03
я просто инсерт делаю в MergeTable и он сразу заменяет старые на новые в зависимости от ключа?
тогда в ReplacedMergeTable теряется смысл?

Kirill
05.04.2018
07:02:48

Гаврилов
05.04.2018
07:11:24
печально
я думал он обновлять может
тогда движок поддерживает не обновление в реальном времени, а добавление в реальном времени

Google

Вячеслав
05.04.2018
07:22:49
Привет. Подскажите пожалуйста, имеет ли смысл использовать тип UUID для хранения уникальных идентификаторов? Есть ли с ним какие то проблемы? В changelog репозитории CH указано, что поддержка UUID неполная.

Kirill
05.04.2018
07:25:14

Вячеслав
05.04.2018
07:38:53

Kirill
05.04.2018
07:40:41

Вячеслав
05.04.2018
07:41:45

Andrew
05.04.2018
07:57:52
UUID тип сейчас вообще частично сломан
поэтому в данный момент есть только вариант с FixedString
https://github.com/yandex/ClickHouse/issues/1770
Конечно очень хотелось бы чтобы разработчики исправили CAST оператор и операции сравнения для UUID. Жить бы стало проще. Может кто нибудь дать estimatation по срокам на эти баги?

Wolf
05.04.2018
08:10:24
Вчера сказали исправьте сами и пришлите пул реквест, так что со сроками все ясно, как только сам починишь

Andrew
05.04.2018
08:12:40
))))

Andrey
05.04.2018
09:13:48
Ловлю очень странное поведение
`SELECT DISTINCT stack_trace
FROM dfs.error
WHERE emergency_datetime > toDateTime('2018-04-05 11:30:34')
LIMIT 10
Received exception from server (version 1.1.54370):
Code: 171. DB::Exception: Received from localhost:9001, 127.0.0.1. DB::Exception: Block structure mismatch in UNION stream: different number of columns:
stack_trace String String(size = 0)
stack_trace String String(size = 0), emergency_datetime DateTime UInt32(size = 0).
`
`
:) describe dfs.error
DESCRIBE TABLE dfs.error
┌─name───────────────┬─type─────┬─default_type─┬─default_expression─┐
│ incoming_message │ String │ │ │
│ stack_trace │ String │ │ │
│ emergency_date │ Date │ │ │
│ emergency_datetime │ DateTime │ │ │
└────────────────────┴──────────┴──────────────┴────────────────────┘
4 rows in set. Elapsed: 0.001 sec.
`
version 1.1.54370.
dfs.error - это Distrebuted таблица
к локальной - работает


Nikolai
05.04.2018
09:22:35
похоже на это: https://github.com/yandex/ClickHouse/issues/2156
но будет отлично, если вы добавите свой пример со структурой таблиц и конфигурацией кластера, на котором падает запрос

Andrey
05.04.2018
09:26:36
Пойду откатываться(((((

Eugene
05.04.2018
09:27:34
ребят, подскажите, когда определен внешний словарь с источником по https с lazy_load false и он почему-то не загружается, КХ считает что таймаут, есть возможность поставить какойто retry может быть?

Nikolai
05.04.2018
09:34:01
есть параметр lifetime, можно его покрутить. но меньше 5 секунд, кажется, не получится сделать
а еще можно сделать system reload dictionary dict_name
https://clickhouse.yandex/docs/en/dicts/external_dicts_dict_lifetime/#dicts-external_dicts_dict_lifetime

Eugene
05.04.2018
09:37:13
он кстати не ходит к словарю который не смог загрузить повторно, lifetime стоит 300

Google

Eugene
05.04.2018
09:37:57
и если к нему обращаться например через select dictGetString ... - запрос виснет

Беслан
05.04.2018
09:37:59
Коллеги, а по массивам можно делать IN , или обязательно arrayExists ?

Alexander
05.04.2018
09:38:43
has()

Nikolai
05.04.2018
09:45:49

Eugene
05.04.2018
09:47:09
исследование проблемы показало - если 1 словарь не загружается из списка - ни один из словарей не работает даже если был загружен успешно
ну и system reload dictionary dict_name тоже не помогает

Nikolai
05.04.2018
09:47:53


Антон
05.04.2018
10:11:26
Вопрос по StorageFile.
Почему нельзя создать таблицу из файла на сервере?
CREATE TABLE fileTest
(
id UInt32,
data String
)
ENGINE = File(TabSeparated, '/path_to_clickhouse/data/test.tsv')
DB::Exception: Using file descriptor or user specified path as source of storage isn't allowed for server daemons


Eugene
05.04.2018
10:12:59
у меня сорсы - tsv'шки через https за nginx
20 словарей. если указаны все - один обязательно стрельнет timeout'ом
трейс -
11. /usr/bin/clickhouse-server(DB::ExternalDictionaries::ExternalDictionaries(std::unique_ptr<DB::IExternalLoaderConfigRepository, std::default_delete<DB::IExternalLoaderConfigReposit
2018.04.05 08:31:03.549125 [ 4 ] <Error> BaseDaemon: ########################################
2018.04.05 08:31:03.549146 [ 4 ] <Error> BaseDaemon: (from thread 1) Received signal Aborted (6).
2018.04.05 08:50:51.446143 [ 1 ] <Error> ExternalDictionaries: Cannot create external dictionary 'section' from config path /etc/clickhouse-server/dictionaries.xml: Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = Timeout: connect timed out: XXX:443, e.what() = Timeout
2018.04.05 08:50:51.446929 [ 1 ] <Error> ExternalDictionaries: reloadFromConfigFile has thrown while reading from /etc/clickhouse-server/dictionaries.xml: Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = Timeout: connect timed out: XXX:443, e.what() = Timeout


Sergey
05.04.2018
10:14:03
Народ, а подскажите, в чем может быть проблема и куда копать, если КХ перестал отвечать и отдавать Ok по адресу сайт:порт?

Wolf
05.04.2018
10:14:11
ну посмотрите ошибки в нгинксе

Sergey
05.04.2018
10:14:42
оом киллер? Это че?

Eugene
05.04.2018
10:14:54
Puma ну а то что из-за одного таймаута не работает всё это как-бы ок считается ?

Wolf
05.04.2018
10:14:58
линукс киллер если память кончилась

Eugene
05.04.2018
10:15:53
на него ничего не завязано. и при этом ни один другой словарь не работает , хотя был загружен успешно

Combot
05.04.2018
10:16:10
combot.org/chat/-1001080295593

Google

Combot
05.04.2018
10:16:11
combot.org/chat/-1001080295593

Eugene
05.04.2018
10:17:25
в nginx ошибок никаких нет, там всё работает без проблем.
каждый раз рандомный словарь отваливается при старте КХ

Sergey
05.04.2018
10:18:00
Ха, а знаете какой прикол - если захожу со Старбакса, ничего не пишет и висит, а если с расшаренного Андроида - пишет Ok =)

Vladislav
05.04.2018
10:18:32

∀
05.04.2018
10:25:04
с данными это не связано, у тебя есть вью и нет от него sql в метадате

Vladislav
05.04.2018
10:29:16
Понял, спасибо

Nikolai
05.04.2018
10:40:18

Eugene
05.04.2018
10:42:11
@kochetovnicolai всё решилось установкой <http_connection_timeout>10</http_connection_timeout>
который по дефолту равен единице
но думаю что когда недоступны все словари из-за одного это не айс

Nikolai
05.04.2018
10:43:08
наверно, все словари идут одновременно обновляться, и один не успевает по таймауту

Eugene
05.04.2018
10:43:34
возможно таймаут идет один на всё сразу?

Nikolai
05.04.2018
10:44:13
когда все словари недоступы из-за одного, конечно, плохо. попробую воспроизвести конкретно для http словарей

Eugene
05.04.2018
10:45:40
да, и не забывайте, что запрос к одному из таких "недоступных" словарей виснет(более 5и минут, потом ctrl+c) и ничего не отдает
в логах, в такой ситуации, соответственно тоже ничего нет

Nikolai
05.04.2018
10:46:11
словарь cached?

Eugene
05.04.2018
10:46:26
hashed

Артемий
05.04.2018
11:07:26

Nikolai
05.04.2018
11:07:51
в clickhouse-local должен работать

Саша
05.04.2018
11:11:50
Добрый день.
А как проверить что запрос выполнился на нескольких серверах при обращении к distributed таблице?
SELECT
toDate('2018-03-29') AS date,
last_status AS status,
project_id,
now() AS datetime,
uniqExact(client_id) AS unique,
groupUniqArray(hn)
FROM
(
SELECT
hostName() AS hn,
client_id AS client_id,
project_id AS project_id,
list_id AS list_id,
argMax(status, datetime) AS last_status
FROM distributed_stat
WHERE (status_updated = 1) AND (date <= '2018-03-29')
GROUP BY
client_id,
subscription_id,
project_id,
list_id
)
GROUP BY
project_id,
last_status
groupUniqArray(hn) выдает массив из одного элемента постоянно

Google

Саша
05.04.2018
11:12:30
может что-то неправильно настроено?

Alex
05.04.2018
11:18:04
это ожидаемое поведение
Если вы в консольном клиенте выставите set distributed_group_by_no_merge=1; и выполните внутренний запрос, то там появятся hostname

Саша
05.04.2018
11:26:16

Alex
05.04.2018
11:27:43

Саша
05.04.2018
11:30:26
единственной в плане запроса в логах я вижу такой
executeQuery: Query pipeline:
Expression
Expression
Aggregating
Concat
Expression
Remote


Vitaliy
05.04.2018
12:46:33
Я тут надыбал занимательную ошибку
2018.04.05 12:44:23.383013 [ 8 ] <Error> HTTPHandler: Code: 195, e.displayText() = DB::Exception: User default is not allowed to connect from address ::ffff:10.21.90.20, e.what() = DB::Exception, Stack trace:
0. /usr/bin/clickhouse-server(StackTrace::StackTrace()+0x15) [0x73178b5]
1. /usr/bin/clickhouse-server(DB::Exception::Exception(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)+0x1e) [0x19ca19e]
2. /usr/bin/clickhouse-server(DB::SecurityManager::authorizeAndGetUser(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&, Poco::Net::IPAddress const&) const+0x5aa) [0x6729a4a]
3. /usr/bin/clickhouse-server(DB::Context::setUser(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&, Poco::Net::SocketAddress const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x80) [0x666d310]
4. /usr/bin/clickhouse-server(DB::HTTPHandler::processQuery(Poco::Net::HTTPServerRequest&, HTMLForm&, Poco::Net::HTTPServerResponse&, DB::HTTPHandler::Output&)+0x542) [0x19e4f02]
5. /usr/bin/clickhouse-server(DB::HTTPHandler::handleRequest(Poco::Net::HTTPServerRequest&, Poco::Net::HTTPServerResponse&)+0x397) [0x19e9aa7]
6. /usr/bin/clickhouse-server(Poco::Net::HTTPServerConnection::run()+0x335) [0x7632085]
7. /usr/bin/clickhouse-server(Poco::Net::TCPServerConnection::start()+0xe) [0x762ad4e]
8. /usr/bin/clickhouse-server(Poco::Net::TCPServerDispatcher::run()+0x165) [0x762b115]
9. /usr/bin/clickhouse-server(Poco::PooledThread::run()+0x76) [0x73e6f36]
10. /usr/bin/clickhouse-server(Poco::ThreadImpl::runnableEntry(void*)+0x37) [0x73e32a7]
11. /usr/bin/clickhouse-server() [0x76fcfae]
12. /lib/x86_64-linux-gnu/libpthread.so.0(+0x76b9) [0x7f77de1ed6b9]
13. /lib/x86_64-linux-gnu/libc.so.6(clone+0x6c) [0x7f77ddc1a41c]


Firej
05.04.2018
12:48:29
привет! у меня тут зукипер сломался походу и теперь в логах CH вижу кучу таких сообщений -
(ReplicatedMergeTreeQueue): Not executing log entry for part 20180316_18956_102318_13 because its size (38.99 GiB) is greater than current maximum (19.80 MiB).
есть вообще шанс, что оно само починится?
или может гдето можно подкрутить чтонибудь

Vitaliy
05.04.2018
12:54:15
при этом...
[12:53] icinga-labs:~ (✓)# curl -I http://10.27.4.12:8123
HTTP/1.1 200 OK
Date: Thu, 05 Apr 2018 12:53:42 GMT
Connection: Keep-Alive
Keep-Alive: timeout=3
Content-Type: text/html; charset=UTF-8
Content-Length: 4

Nikolai
05.04.2018
12:56:05

Firej
05.04.2018
12:57:55
нет, не выставлен
и через 10 минут почемуто зукипер в итоге вообще помирает