старой версии CityHash, поэтому мы не можем её обновить
Алексей, cпасибо за подробный ответ, мы этого и боялись что CityHash может меняться, нам нужно было партировать на наших клиентов: с++,java,php,js - реализацию как в CH, чтобы клиенты могли такой-же вычислять хеш как и CH и это было бы не изменно)
Еще пару вопросов, хочу реализовать в CHgui, просмотр процессов с возможностью Kill и реализовать получение информации о ходе выполнения запроса ( сделать недо подобие clickhouse-client через http) :
Насколько опасно в запросы из CHgui подставлять комментарий в виде /*__QUID__*/ в начале каждого запроса, где QUID=sha1(), насколько я смог понять из кода/документации самого CH комменты вырезаются и придумать/смоделировать, когда однострочный комментарий перед/в конце SELECT может вызвать проблему - не реально ?
Насколько корректно отправлять KILL на запрос, через отправку запроса "SELECT 1" в GET указывая query_id ?
И как можно убить запрос в кластере ?
Не смог разобраться/понять зачем initial_query_id, получается это ID запроса в ноде которая породила запросы в кластер ?
Комментарий в начало запроса подставлять безопасно. Также у нас была старая не реализованная идея - сделать в HTTP запросе параметр comment, который пробрасывался бы в processlist и в query_log. В master ветке ClickHouse и в следующем релизе есть запрос KILL QUERY специально для остановки запросов. Он убивает запрос, в том числе, и на всём кластере - достаточно задать на инициирующем сервере. initial_query_id - идентификатор запроса на инициирующем сервере. Предназначен для трассировки распределённых запросов, чтобы SELECT-ом из распределённого query_log-а можно было получить дерево запрсов на всех серверах.
Обсуждают сегодня