サーバーパケット
| 値 | 名前 | 説明 |
|---|---|---|
| 0 | Hello | サーバーハンドシェイク応答 |
| 1 | データ | クライアントデータ と同じ |
| 2 | 例外 | クエリ処理の例外 |
| 3 | 進行状況 | クエリの進行状況 |
| 4 | Pong | Ping 応答 |
| 5 | ストリームの終わり | すべてのパケットが転送されました |
| 6 | プロファイル情報 | プロファイリングデータ |
| 7 | 合計 | 合計値 |
| 8 | 極値 | 極値 (最小、最大) |
| 9 | TablesStatusResponse | TableStatus リクエストへの応答 |
| 10 | ログ | クエリシステムログ |
| 11 | テーブルカラム | カラムの説明 |
| 12 | UUIDs | ユニークパーツIDのリスト |
| 13 | ReadTaskRequest | 次のタスクが必要なリクエストを示す文字列 (UUID) |
| 14 | プロファイルイベント | サーバーからのプロファイルイベントを含むパケット |
データ、合計、および 極値 は圧縮できる。
Hello
クライアント hello への応答。
| フィールド | 型 | 値 | 説明 |
|---|---|---|---|
| 名前 | 文字列 | Clickhouse | サーバー名 |
| version_major | UVarInt | 21 | サーバーのメジャーバージョン |
| version_minor | UVarInt | 12 | サーバーのマイナーバージョン |
| revision | UVarInt | 54452 | サーバーのリビジョン |
| tz | 文字列 | Europe/Moscow | サーバーのタイムゾーン |
| display_name | 文字列 | Clickhouse | UI用のサーバー名 |
| version_patch | UVarInt | 3 | サーバーのパッチバージョン |
例外
クエリ処理中のサーバー例外。
| フィールド | 型 | 値 | 説明 |
|---|---|---|---|
| コード | Int32 | 60 | ErrorCodes.cppを参照。 |
| 名前 | 文字列 | DB::Exception | サーバーのメジャーバージョン |
| メッセージ | 文字列 | DB::Exception: Table X doesn't exist | サーバーのマイナーバージョン |
| stack_trace | 文字列 | ~ | C++ スタックトレース |
| nested | Bool | true | 他のエラー |
nested が false になるまで、例外の連続リストが続くことがあります。
進行状況
サーバーによって定期的に報告されるクエリ実行の進行状況。
ヒント
進行状況は データ で報告されます。合計については、クライアントで累積してください。
| フィールド | 型 | 値 | 説明 |
|---|---|---|---|
| 行数 | UVarInt | 65535 | 行の数 |
| バイト数 | UVarInt | 871799 | バイトの数 |
| 合計行数 | UVarInt | 0 | 合計行数 |
| クライアントから書き込み行数 | UVarInt | 0 | クライアントからの行数 |
| クライアントから書き込みバイト数 | UVarInt | 0 | クライアントからのバイト数 |
Pong
クライアント ping への応答、パケットボディなし。
ストリームの終わり
これ以上の データ パケットは送信されず、クエリ結果はサーバーからクライアントに完全にストリーミングされました。
パケットボディなし。
プロファイル情報
| フィールド | 型 |
|---|---|
| 行数 | UVarInt |
| ブロック数 | UVarInt |
| バイト数 | UVarInt |
| 適用された制限 | Bool |
| 制限前の行数 | UVarInt |
| 制限前に計算された行数 | Bool |
ログ
データブロックとしてのサーバーログ。
ヒント
カラムのデータブロックとしてエンコードされますが、圧縮されることはありません。
| カラム | 型 |
|---|---|
| 時間 | DateTime |
| マイクロ秒 | UInt32 |
| ホスト名 | 文字列 |
| クエリID | 文字列 |
| スレッドID | UInt64 |
| 優先度 | Int8 |
| ソース | 文字列 |
| テキスト | 文字列 |
プロファイルイベント
データブロックとしてのプロファイルイベント。
ヒント
カラムのデータブロックとしてエンコードされますが、圧縮されることはありません。
値 の型は、サーバーのリビジョンに応じて UInt64 または Int64 です。
| カラム | 型 |
|---|---|
| ホスト名 | 文字列 |
| 現在の時間 | DateTime |
| スレッドID | UInt64 |
| 型 | Int8 |
| 名前 | 文字列 |
| 値 | UInt64 または Int64 |