Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

configurações de sessão apply_*

Essas configurações estão disponíveis em system.settings e são autogeradas a partir do código-fonte.

apply_deleted_mask

Tipo
Bool
Padrão
1

Habilita a filtragem de linhas excluídas com exclusão leve. Se estiver desabilitado, uma consulta poderá ler essas linhas. Isso é útil para depuração e cenários de "desfazer exclusão"

apply_mutations_on_fly

Tipo
Bool
Padrão
0

Se true, as mutações (UPDATEs e DELETEs) que não estão materializadas na data part serão aplicadas nas instruções SELECT.

apply_prewhere_after_final

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
25.120Nova configuração. Quando habilitada, as condições PREWHERE são aplicadas após o processamento FINAL.

Quando habilitada, as condições PREWHERE são aplicadas após o processamento FINAL para ReplacingMergeTree e motores semelhantes. Isso pode ser útil quando PREWHERE faz referência a colunas que podem ter valores diferentes em linhas duplicadas e você quer que FINAL selecione a linha que prevalece antes da filtragem. Quando desabilitada, PREWHERE é aplicada durante a leitura. Observação: se apply_row_level_security_after_final estiver habilitada e a política de linha usar colunas fora da chave de ordenação, PREWHERE também será adiada para manter a ordem correta de execução (a política de linha deve ser aplicada antes de PREWHERE).

apply_row_policy_after_final

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
25.101A configuração foi adicionada como uma correção para a regressão pós-#87303, em que as políticas de linha e PREWHERE eram aplicados antes de FINAL. O PR #91065 introduziu a configuração, e o PR #97279 tornou true o padrão seguro em termos de correção. Registrado como {true, true} para que a compatibilidade nunca reverta ao comportamento false anterior à correção.

Quando ativado, as políticas de linha e PREWHERE são aplicados após o processamento de FINAL para tabelas *MergeTree. (Especialmente para ReplacingMergeTree) Quando desativado, as políticas de linha são aplicadas antes de FINAL, o que pode causar resultados diferentes quando a política filtra linhas que deveriam ser usadas para desduplicação em ReplacingMergeTree ou motores semelhantes.

Se a expressão da política de linha depender apenas de colunas em ORDER BY, ela ainda será aplicada antes de FINAL como uma otimização, pois essa filtragem não pode afetar o resultado da desduplicação.

Valores possíveis:

  • 0 — A política de linha e PREWHERE são aplicados antes de FINAL (padrão).
  • 1 — A política de linha e PREWHERE são aplicados após FINAL.

apply_settings_from_server

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
25.21O código do lado do cliente (por exemplo, a análise da entrada de INSERT e a formatação da saída da consulta) usará as mesmas configurações do servidor, incluindo as configurações da configuração do servidor.

Define se o cliente deve aceitar configurações do servidor.

Isso afeta apenas operações executadas do lado do cliente, em particular a análise dos dados de entrada de INSERT e a formatação do resultado da consulta. A maior parte da execução da consulta acontece no servidor e não é afetada por esta configuração.

Normalmente, esta configuração deve ser definida no profile do usuário (users.xml ou consultas como ALTER USER), e não por meio do cliente (argumentos de linha de comando do cliente, consulta SET ou seção SETTINGS da consulta SELECT). Pelo cliente, ela pode ser alterada para false, mas não para true (porque o servidor não enviará as configurações se o profile do usuário tiver apply_settings_from_server = false).

Observe que, inicialmente (24.12), havia uma configuração do servidor (send_settings_to_client), mas depois ela foi substituída por esta configuração do cliente, para melhorar a usabilidade.

Navigation