Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

configurações de sessão allow_*

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

allow_aggregate_partitions_independently

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
26.71Habilita por padrão a agregação independente por partição quando a chave de particionamento é adequada à chave de `GROUP BY`. As heurísticas de tempo de execução existentes em `ReadFromMergeTree::requestOutputEachPartitionThroughSeparatePortForAggregation` já ignoram a otimização quando o layout das partições é desfavorável (poucas partições, muitas partições ou tamanhos de partição significativamente desbalanceados), portanto habilitar essa configuração é seguro nos casos em que, caso contrário, ela não teria efeito.

Habilita a agregação independente de partições em threads separadas quando a chave de particionamento é adequada à chave de GROUP BY. Isso é benéfico quando o número de partições é próximo do número de núcleos e as partições têm aproximadamente o mesmo tamanho. As heurísticas em ReadFromMergeTree desabilitam automaticamente a otimização para layouts desfavoráveis (poucas partições, muitas partições ou tamanhos de partição significativamente desbalanceados); consulte force_aggregate_partitions_independently para ignorar essas verificações.

allow_archive_path_syntax

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
24.81Nova configuração adicionada para permitir desabilitar a sintaxe de caminho de arquivo.
24.51Nova configuração adicionada para permitir desabilitar a sintaxe de caminho de arquivo.

Os motores File/S3 e a função de tabela analisarão caminhos com '::' como <archive> :: <file> se o arquivo tiver a extensão correta.

allow_asynchronous_read_from_io_pool_for_merge_tree

Tipo
Bool
Padrão
0

Usa o pool de E/S em segundo plano para ler dados de tabelas MergeTree. Essa configuração pode aumentar o desempenho de consultas limitadas por E/S.

allow_calculating_subcolumns_sizes_for_merge_tree_reading

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
26.31Permite calcular os tamanhos das subcolunas na leitura de MergeTree para melhorar a divisão das tarefas de leitura

Quando habilitada, o ClickHouse calculará o tamanho dos arquivos necessários para a leitura de cada subcoluna para melhorar o cálculo dos tamanhos das tarefas e dos blocos.

allow_changing_replica_until_first_data_packet

Tipo
Bool
Padrão
0

Se estiver habilitado, em hedged requests podemos iniciar uma nova conexão até receber o primeiro pacote de Data, mesmo que já tenhamos feito algum Progress (mas o Progress não tenha sido atualizado dentro do timeout receive_data_timeout); caso contrário, desabilitamos a troca de réplica depois da primeira vez em que houve Progress.

allow_create_index_without_type

Tipo
Bool
Padrão
0

Permite a consulta CREATE INDEX sem TYPE. A consulta será ignorada. Destinado a testes de compatibilidade com SQL.

allow_creating_set_partitions_independently

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
26.81Nova configuração para habilitar a pré-desduplicação paralela por partição do resultado da subconsulta ao criar o conjunto para `IN (subquery)`, quando a expressão de partição é uma função determinística das colunas de saída da subconsulta.

Habilita a pré-desduplicação paralela por partição do resultado da subconsulta ao criar o conjunto para IN (subquery), quando a expressão de partição da tabela MergeTree da subconsulta é uma função determinística das colunas de saída da subconsulta. Cada partição é lida em um fluxo separado e desduplicada independentemente, de modo que a única transformada de preenchimento do conjunto calcula hashes apenas de linhas únicas. Não se aplica com FINAL, réplicas paralelas ou GLOBAL IN. A otimização solicita a leitura por partição somente quando os dados têm mais de uma partição e a maior partição contém, no máximo, o dobro das linhas da partição média (consulte force_creating_set_partitions_independently para ignorar a verificação de assimetria); quando os fluxos já são separados por partição porque outro recurso por partição os dividiu (por exemplo, LIMIT BY por partição), a pré-desduplicação é aplicada independentemente disso, pois o layout de leitura já está definido. Enquanto o conjunto é criado, as tabelas de desduplicação por fluxo mantêm juntas aproximadamente uma cópia extra das chaves únicas.

allow_custom_error_code_in_throwif

Tipo
Bool
Padrão
0

Habilita o uso de código de erro personalizado na função throwIf(). Se true, as exceções lançadas podem ter códigos de erro inesperados.

allow_ddl

Tipo
Bool
Padrão
1

Se estiver definido como true, o usuário poderá executar consultas DDL.

allow_delta_kernel_rs

Recurso beta

Aliases: allow_experimental_delta_kernel_rs

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
26.81Novo nome de `allow_experimental_delta_kernel_rs`, que deixou de ser experimental e é mantido como alias. O padrão permanece inalterado.
25.51Nova configuração. Introduzida com o nome `allow_experimental_delta_kernel_rs`, que agora é seu alias; a linha é mantida com o nome canônico para preservar todo o histórico.

Permite usar a implementação delta-kernel-rs para ler tabelas Delta Lake.

allow_distinct_partitions_independently

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
26.81Nova configuração para habilitar a avaliação independente de `DISTINCT` por partição quando a expressão de partição é uma função determinística das colunas de `DISTINCT`.

Habilita a avaliação independente de DISTINCT por partição em threads separadas quando a expressão de partição é uma função determinística das colunas de DISTINCT, dispensando a mesclagem entre fluxos. É vantajoso quando o número de partições é próximo ao número de núcleos e as partições têm aproximadamente o mesmo tamanho; caso contrário, uma heurística de custo a desativa. Consulte max_number_of_partitions_for_independent_distinct e force_distinct_partitions_independently. Não se aplica com FINAL nem com réplicas paralelas.

Não se aplica quando max_rows_in_distinct ou max_bytes_in_distinct está definido: esses limites são aplicados pela única transformada DISTINCT que processa todo o resultado mesclado; por isso, a mesclagem entre fluxos é mantida para preservar seu significado global.

allow_distributed_ddl

Tipo
Bool
Padrão
1

Se estiver definido como true, o usuário terá permissão para executar consultas de DDL distribuído.

allow_drop_detached

Tipo
Bool
Padrão
0

Permite consultas ALTER TABLE ... DROP DETACHED PART[ITION] ...

allow_dynamic_type_in_join_keys

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
25.100Desabilita por padrão o uso do tipo Dynamic em chaves de JOIN

Permite usar o tipo Dynamic em chaves de JOIN. Adicionado por compatibilidade. Não é recomendável usar o tipo Dynamic em chaves de JOIN, porque a comparação com outros tipos pode levar a resultados inesperados.

allow_execute_multiif_columnar

Tipo
Bool
Padrão
1

Permite executar a função multiIf de forma colunar

allow_fuzz_query_functions

Recurso experimental
Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.20Nova configuração para habilitar a função fuzzQuery.

Habilita a função fuzzQuery, que aplica mutações aleatórias de AST a uma string de consulta.

allow_general_join_planning

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
25.11Permite um algoritmo de planejamento de join mais abrangente quando o algoritmo de hash join está habilitado.

Permite um algoritmo de planejamento de join mais abrangente, capaz de lidar com condições mais complexas, mas que funciona apenas com hash join. Se o hash join não estiver habilitado, o algoritmo de planejamento de join padrão será usado independentemente do valor desta configuração.

allow_get_client_http_header

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
24.30Introduzida uma nova função.

Permite usar a função getClientHTTPHeader, que permite obter o valor de um cabeçalho da requisição HTTP atual. Ela não é habilitada por padrão por motivos de segurança, pois alguns cabeçalhos, como Cookie, podem conter informações sensíveis. Observe que os cabeçalhos X-ClickHouse-*, Authentication e Authorization são sempre restritos e não podem ser obtidos com esta função.

allow_hyperscan

Tipo
Bool
Padrão
1

Permite funções que usam a biblioteca Hyperscan. Desative para evitar tempos de compilação potencialmente longos e uso excessivo de recursos.

allow_iceberg_remove_orphan_files

Recurso experimental
Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.40Nova configuração para controlar a remoção de arquivos órfãos do Iceberg

Permite usar 'ALTER TABLE … EXECUTE remove_orphan_files()' em tabelas Iceberg.

allow_insert_into_iceberg

Recurso beta

Aliases: allow_experimental_insert_into_iceberg

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.20`Insert` no Iceberg passou para Beta
25.70Nova configuração.

Permite executar consultas insert no Iceberg.

allow_introspection_functions

Tipo
Bool
Padrão
0

Habilita ou desabilita funções de introspecção para o perfilamento de consultas.

Valores possíveis:

  • 1 — Funções de introspecção habilitadas.
  • 0 — Funções de introspecção desabilitadas.

Veja também

allow_key_condition_coalesce_rewrite

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
26.51Nova configuração para reescrever predicados da forma `coalesce(a_1, ..., a_N) <op> const` (e, de forma equivalente, `ifNull`, ou com a constante à esquerda) como uma disjunção antes da análise de índices, para que a chave primária por coluna e os índices de salto em cada `a_i` possam ser usados. Formas parcialmente constantes, como `coalesce(a, 42, b)` e `coalesce(a, b, 42)`, também são tratadas.

Reescreve predicados da forma coalesce(a_1, ..., a_N) <op> const (e, de forma equivalente, ifNull, ou com a constante à esquerda) como a disjunção (a_1 <op> const) OR (a_1 IS NULL AND a_2 <op> const) OR ... OR (a_1 IS NULL AND ... AND a_{N-1} IS NULL AND a_N <op> const) antes da análise de índices, para que a chave primária por coluna e os índices de salto em cada a_i possam ser usados. Formas parcialmente constantes, como coalesce(a, 42, b) e coalesce(a, b, 42), são tratadas: a lista de argumentos é normalizada da mesma forma que o próprio coalesce (literais NULL são removidos, assim como os argumentos após o primeiro que não seja Nullable), e uma constante não NULL ao final, se houver, é emitida como o ramo final. A reescrita é estritamente aditiva para o descarte por índices; a filtragem em tempo de execução continua usando o predicado original. Além disso, predicados de igualdade exata da forma nullIf(key, sentinel) = const (em que sentinel != const e os tipos correspondem exatamente) são reescritos para key = const, para que a chave primária, a partição e os índices de salto em key possam descartar grânulos diretamente. Não há suporte para eliminação de nullIf por intervalo ou disjunção.

allow_limit_by_partitions_independently

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
26.61Nova configuração para habilitar a avaliação independente de `LIMIT BY` em cada partição quando a expressão de partição for uma função determinística das colunas de `LIMIT BY`.

Habilita a avaliação independente de LIMIT BY em cada partição, em threads separadas, quando a expressão de partição é uma função determinística das colunas de LIMIT BY.

allow_lossy_numeric_supertype

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.80Nova configuração que permite que if/multiIf/coalesce/ifNull/array/map resolvam ramificações exclusivamente numéricas que não têm um tipo comum sem perda (por exemplo, Decimal + Float64) para um supertipo numérico (Float64, com possível perda de precisão), permitindo agregar o resultado. É independente de use_variant_as_common_type: com essa opção desativada, essas ramificações antes geravam NO_COMMON_TYPE; com ela ativada, tornavam-se um Variant. Em ambos os casos, agora são resolvidas para Float64.

Quando ativada, if/multiIf/coalesce/ifNull/array/map aplicados a um conjunto de argumentos numéricos que não tem um tipo comum sem perda (por exemplo, um Decimal e um Float64, ou um Int64 e um Float64) são resolvidos para um supertipo numérico (Float64) em vez de falharem, com possível perda de precisão. Isso permite usar o resultado diretamente com funções de agregação que combinam valores, como sum, avg, min e max. Essa opção é independente de use_variant_as_common_type: o supertipo numérico é produzido independentemente de use_variant_as_common_type estar ativada ou não. Quando desativada (o padrão), esses conjuntos de argumentos não têm um tipo comum e, portanto, tornam-se um Variant (se use_variant_as_common_type estiver ativada) ou geram NO_COMMON_TYPE.

allow_materialized_view_with_bad_select

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
25.40Não permite criar MVs que fazem referência a colunas ou tabelas inexistentes
24.91Dá suporte (mas ainda não habilita) à validação mais rigorosa em CREATE MATERIALIZED VIEW

Permite CREATE MATERIALIZED VIEW com uma consulta SELECT que faz referência a tabelas ou colunas inexistentes. A consulta ainda precisa ser sintaticamente válida. Não se aplica a MVs atualizáveis. Não se aplica se o esquema da MV precisar ser inferido a partir da consulta SELECT (isto é, se o CREATE não tiver lista de colunas nem tabela de destino com TO). Pode ser usado para criar uma MV antes da tabela de origem.

allow_metadata_only_named_tuple_alter

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.80Nova configuração para controlar ALTER somente de metadados ao adicionar subcampos a uma Tuple nomeada.

Se true, ALTER MODIFY COLUMN em uma Tuple nomeada que apenas adiciona novos subcampos é somente de metadados (sem mutação de dados). Defina como false para forçar o comportamento anterior de mutação completa.

allow_minmax_index_for_json

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.70Proíbe, por padrão, a criação de índice skip minmax em colunas JSON porque a serialização do índice não consegue lidar com valores heterogêneos de Field

Permite criar índices skip minmax em colunas JSON (Object). Desativado por padrão porque o mecanismo de serialização do índice minmax não consegue lidar com os valores heterogêneos de Field que as colunas JSON podem conter.

allow_named_collection_override_by_default

Tipo
Bool
Padrão
1

Permite, por padrão, a substituição dos campos das coleções nomeadas.

allow_non_metadata_alters

Tipo
Bool
Padrão
1

Permite executar alters que afetam não apenas os metadados das tabelas, mas também os dados em disco

allow_nonconst_timezone_arguments

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
23.40Permite argumentos de fuso horário não constantes em determinadas funções relacionadas a data e hora, como toTimeZone(), fromUnixTimestamp*() e snowflakeToDateTime*().

Permite argumentos de fuso horário não constantes em determinadas funções relacionadas a data e hora, como toTimeZone(), fromUnixTimestamp*() e snowflakeIDToDateTime*(). Essa configuração existe apenas por motivos de compatibilidade. No ClickHouse, o fuso horário é uma propriedade do tipo de dado e, por consequência, da coluna. Ativar essa configuração passa a impressão errada de que valores diferentes dentro de uma coluna podem ter fusos horários diferentes. Portanto, não ative essa configuração.

allow_nullable_tuple_in_extracted_subcolumns

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.30Nova configuração que controla se subcolunas extraídas de Tuple podem ser anuláveis.

Controla se subcolunas extraídas do tipo Tuple(...) podem ser tipadas como Nullable(Tuple(...)).

  • false: Retorna Tuple(...) e usa os valores padrão da tupla para linhas em que a subcoluna está ausente.
  • true: Retorna Nullable(Tuple(...)) e usa NULL para linhas em que a subcoluna está ausente.

Esta configuração controla apenas o comportamento das subcolunas extraídas. Ela não controla se colunas Nullable(Tuple(...)) podem ser criadas em tabelas; isso é controlado por enable_nullable_tuple_type.

O ClickHouse usa o valor dessa configuração carregado na inicialização do servidor. Alterações feitas com SET ou SETTINGS no nível da consulta não mudam o comportamento das subcolunas extraídas. Para mudar o comportamento das subcolunas extraídas, atualize allow_nullable_tuple_in_extracted_subcolumns na configuração do perfil de inicialização (por exemplo, users.xml) e reinicie o servidor.

allow_rank_dense_rank_arguments

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.50Nova configuração. Antes da versão 26.5, as funções de janela `RANK` e `DENSE_RANK` ignoravam silenciosamente quaisquer argumentos fornecidos (equivalente a `allow_rank_dense_rank_arguments = 1`). A partir da versão 26.5, elas rejeitam argumentos por padrão com `NUMBER_OF_ARGUMENTS_DOESNT_MATCH` porque, segundo o padrão SQL, essas funções aceitam zero argumentos. Defina como `1` para restaurar o comportamento antigo.

Permite passar argumentos para as funções de janela RANK e DENSE_RANK por compatibilidade retroativa.

Segundo o padrão SQL, RANK e DENSE_RANK aceitam zero argumentos — elas classificam as linhas com base apenas na janela OVER (ORDER BY ...). Em versões do ClickHouse anteriores à 26.5, consultas como RANK(x) OVER (...) aceitavam e ignoravam silenciosamente o argumento, o que gerava confusão entre os usuários (o argumento visível sugeria que influenciava o ranking, mas não influenciava).

Quando essa configuração é false (o padrão), RANK e DENSE_RANK rejeitam quaisquer argumentos e geram NUMBER_OF_ARGUMENTS_DOESNT_MATCH. Quando definida como true, o comportamento permissivo antigo é restaurado — os argumentos são ignorados silenciosamente, como acontecia antes da versão 26.5.

allow_reorder_prewhere_conditions

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
24.101Nova configuração

Permite reordenar as condições ao movê-las de WHERE para PREWHERE, para otimizar a filtragem

allow_replace_partition_from_empty_source

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
26.60Nova verificação de segurança: `ALTER TABLE ... REPLACE PARTITION ... FROM ...` agora gera uma exceção quando a tabela de origem não tem partes na partição solicitada (corrige a perda silenciosa de dados em [#23727](https://github.com/ClickHouse/ClickHouse/issues/23727)). O comportamento anterior, de remover silenciosamente a partição de destino, é preservado ao definir `allow_replace_partition_from_empty_source = 1`.

Permite que ALTER TABLE ... REPLACE PARTITION ... FROM ... remova silenciosamente a partição de destino quando a origem não tiver partes nessa partição.

Por padrão, isso não é permitido: REPLACE PARTITION a partir de uma origem sem dados na partição solicitada gera uma exceção, porque, nesse caso, a operação efetivamente se torna um DROP PARTITION silencioso no destino (os dados do destino são removidos e nada os substitui), uma causa comum de perda acidental de dados (veja #23727).

Ative essa configuração para restaurar o comportamento anterior, por exemplo, quando você usa intencionalmente uma partição de origem vazia para limpar dados no destino. Para uma remoção incondicional, prefira ALTER TABLE ... DROP PARTITION ....

allow_settings_after_format_in_insert

Tipo
Bool
Padrão
0
Histórico de versões
VersãoValor padrãoComentário
22.40Não permite SETTINGS após FORMAT em consultas INSERT, porque o ClickHouse interpreta SETTINGS como valores, o que pode causar confusão

Controla se SETTINGS após FORMAT em consultas INSERT é permitido ou não. Não é recomendável usar isso, pois parte de SETTINGS pode ser interpretada como valores.

Exemplo:

INSERT INTO FUNCTION null('foo String') SETTINGS max_threads=1 VALUES ('bar');

Mas a consulta a seguir só funcionará com allow_settings_after_format_in_insert:

SET allow_settings_after_format_in_insert=1;
INSERT INTO FUNCTION null('foo String') VALUES ('bar') SETTINGS max_threads=1;

Valores possíveis:

  • 0 — Não permitir.
  • 1 — Permitir.

allow_simdjson

Tipo
Bool
Padrão
1

Permite o uso da biblioteca simdjson em funções 'JSON*' se as instruções AVX2 estiverem disponíveis. Se estiver desabilitado, a rapidjson será usada.

allow_special_serialization_kinds_in_output_formats

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
25.111Habilita a saída direta de representações especiais de colunas, como Sparse/Replicated, em alguns formatos de saída
25.100Adiciona uma configuração para permitir a saída de representações especiais de colunas, como Sparse/Replicated, sem convertê-las em colunas completas

Permite a saída de colunas com tipos especiais de serialização, como Sparse e Replicated, sem convertê-las para a representação completa da coluna. Isso ajuda a evitar cópias de dados desnecessárias durante a formatação.

allow_unrestricted_reads_from_keeper

Tipo
Bool
Padrão
0

Permite leituras irrestritas (sem condição no path) da tabela system.zookeeper; pode ser útil, mas não é seguro para o ZooKeeper

allow_window_partitions_independently

Tipo
Bool
Padrão
1
Histórico de versões
VersãoValor padrãoComentário
26.81Nova configuração para avaliar funções de janela de forma independente por partição (evitando a dispersão por hash) quando a expressão de partição é uma função determinística das colunas `PARTITION BY` da janela.

Habilita a avaliação independente de funções de janela por partição em threads separadas quando a expressão de partição da tabela MergeTree é uma função determinística das colunas PARTITION BY da janela. Cada partição é lida por um fluxo separado, ordenada de forma independente conforme a descrição de ordenação da janela e processada por sua própria transformada de janela, evitando a dispersão por hash que normalmente redistribui cada linha entre as threads. É vantajoso quando o número de partições é próximo ao número de núcleos e as partições têm aproximadamente o mesmo tamanho; caso contrário, uma heurística de custo impede sua aplicação. Consulte max_number_of_partitions_for_independent_window e force_window_partitions_independently. Não se aplica com FINAL nem com réplicas paralelas.

Navigation