Перейти к основному содержимому
Перейти к основному содержимому

Пакеты сервера

значениеназваниеописание
0HelloОтвет на рукопожатие сервера
1DataТо же самое, что и client data
2ExceptionИсключение при обработке запроса
3ProgressПрогресс выполнения запроса
4PongОтвет на Ping
5EndOfStreamВсе пакеты были переданы
6ProfileInfoДанные профилирования
7TotalsОбщие значения
8ExtremesКрайние значения (min, max)
9TablesStatusResponseОтвет на запрос TableStatus
10LogЛог системы запросов
11TableColumnsОписание колонок
12UUIDsСписок уникальных идентификаторов частей
13ReadTaskRequestСтрока (UUID) описывает запрос, для которого нужна следующая задача
14ProfileEventsПакет с событиями профилирования от сервера

Data, Totals и Extremes могут быть сжаты.

Hello

Ответ на client hello.

полетипзначениеописание
nameStringClickhouseИмя сервера
version_majorUVarInt21Основная версия сервера
version_minorUVarInt12Второстепенная версия сервера
revisionUVarInt54452Ревизия сервера
tzStringEurope/MoscowЧасовой пояс сервера
display_nameStringClickhouseИмя сервера для UI
version_patchUVarInt3Версия патча сервера

Exception

Исключение сервера во время обработки запроса.

полетипзначениеописание
codeInt3260См. ErrorCodes.cpp.
nameStringDB::ExceptionОсновная версия сервера
messageStringDB::Exception: Table X doesn't existВторостепенная версия сервера
stack_traceString~Стек вызовов C++
nestedBooltrueБольше ошибок

Может быть непрерывным списком исключений, пока поле nested равно false.

Progress

Прогресс выполнения запроса, периодически сообщаемый сервером.

подсказка

Прогресс сообщается в дельтах. Для итогов накапливайте на клиенте.

полетипзначениеописание
rowsUVarInt65535Количество строк
bytesUVarInt871799Количество байт
total_rowsUVarInt0Всего строк
wrote_rowsUVarInt0Строки от клиента
wrote_bytesUVarInt0Байты от клиента

Pong

Ответ на client ping, без тела пакета.

End of stream

Больше не будут отправляться пакеты Data, результат запроса полностью передан от сервера к клиенту.

Нет тела пакета.

Profile info

полетип
rowsUVarInt
blocksUVarInt
bytesUVarInt
applied_limitBool
rows_before_limitUVarInt
calculated_rows_before_limitBool

Log

Блок данных с логом сервера.

подсказка

Закодирован как блок данных колонок, но никогда не сжимается.

колонкатип
timeDateTime
time_microUInt32
host_nameString
query_idString
thread_idUInt64
priorityInt8
sourceString
textString

Profile events

Блок данных с событиями профилирования.

подсказка

Закодирован как блок данных колонок, но никогда не сжимается.

Тип valueUInt64 или Int64, в зависимости от ревизии сервера.

колонкатип
host_nameString
current_timeDateTime
thread_idUInt64
typeInt8
nameString
valueUInt64 или Int64