O
Data pode ser compactado.
Hello
Go Client v1.10, que oferece suporte à versão de protocolo 54451, e
queremos nos conectar ao banco de dados default com o usuário default e a senha secret.
| campo | tipo | valor | descrição |
|---|---|---|---|
| client_name | String | "Go Client" | Nome da implementação do cliente |
| version_major | UVarInt | 1 | Versão principal do cliente |
| version_minor | UVarInt | 10 | Versão secundária do cliente |
| protocol_version | UVarInt | 54451 | Versão do protocolo TCP |
| database | String | "default" | Nome do banco de dados |
| username | String | "default" | Nome de usuário |
| password | String | "secret" | Senha |
Versão do protocolo
Valores padrão
"default", o nome de usuário "default" e a senha "" (string vazia) como valores padrão.
Consulta
| campo | tipo | valor | descrição |
|---|---|---|---|
| query_id | String | 1ff-a123 | ID da consulta, pode ser um UUIDv4 |
| client_info | ClientInfo | Ver tipo | Dados sobre o cliente |
| settings | Configurações | Ver tipo | Lista de configurações |
| secret | String | secret | Segredo entre servidores |
| stage | UVarInt | 2 | Executa até o estágio da consulta |
| compression | UVarInt | 0 | Desativado=0, ativado=1 |
| body | String | SELECT 1 | Texto da consulta |
Informações do cliente
| campo | tipo | descrição |
|---|---|---|
| query_kind | byte | None=0, Initial=1, Secondary=2 |
| initial_user | String | Usuário inicial |
| initial_query_id | String | ID da consulta inicial |
| initial_address | String | Endereço inicial |
| initial_time | Int64 | Tempo inicial |
| interface | byte | TCP=1, HTTP=2 |
| os_user | String | Usuário do SO |
| client_hostname | String | Hostname do cliente |
| client_name | String | Nome do cliente |
| version_major | UVarInt | Versão principal do cliente |
| version_minor | UVarInt | Versão secundária do cliente |
| protocol_version | UVarInt | Versão do protocolo do cliente |
| quota_key | String | Chave da quota |
| distributed_depth | UVarInt | Profundidade distribuída |
| version_patch | UVarInt | Versão de patch do cliente |
| otel | Bool | Campos de trace presentes |
| trace_id | FixedString(16) | ID do trace |
| span_id | FixedString(8) | ID do span |
| trace_state | String | Estado do rastreamento |
| trace_flags | Byte | Sinalizadores de rastreamento |
Configurações
| campo | tipo | valor | descrição |
|---|---|---|---|
| chave | String | send_logs_level | Chave da configuração |
| valor | String | trace | Valor da configuração |
| importante | Bool | true | Indica se pode ser ignorado |
Estágio
| valor | nome | descrição |
|---|---|---|
| 0 | FetchColumns | Busca apenas os tipos das colunas |
| 1 | WithMergeableState | Até um estado passível de mesclagem |
| 2 | Complete | Até a conclusão completa (deve ser o padrão) |
Data
| campo | tipo | descrição |
|---|---|---|
| info | BlockInfo | Informações do bloco codificadas |
| columns | UVarInt | Quantidade de colunas |
| rows | UVarInt | Quantidade de linhas |
| columns | []Column | Colunas com dados |
Coluna
| campo | tipo | valor | descrição |
|---|---|---|---|
| name | String | foo | Nome da coluna |
| type | String | DateTime64(9) | Tipo da coluna |
| data | bytes | ~ | Dados da coluna |