allow_aggregate_partitions_independently
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
<archive> :: <file> se o arquivo tiver a extensão correta.
allow_asynchronous_read_from_io_pool_for_merge_tree
allow_calculating_subcolumns_sizes_for_merge_tree_reading
allow_changing_replica_until_first_data_packet
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
allow_custom_error_code_in_throwif
allow_ddl
allow_delta_kernel_rs
allow_experimental_delta_kernel_rs
Permite usar a implementação delta-kernel-rs para ler tabelas Delta Lake.
allow_distinct_partitions_independently
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
allow_drop_detached
ALTER TABLE ... DROP DETACHED PART[ITION] ...
allow_dynamic_type_in_join_keys
allow_execute_multiif_columnar
allow_fuzz_query_functions
fuzzQuery, que aplica mutações aleatórias de AST a uma string de consulta.
allow_general_join_planning
allow_get_client_http_header
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
allow_iceberg_remove_orphan_files
allow_insert_into_iceberg
allow_experimental_insert_into_iceberg
Permite executar consultas insert no Iceberg.
allow_introspection_functions
- 1 — Funções de introspecção habilitadas.
- 0 — Funções de introspecção desabilitadas.
- Sampling Query Profiler
- Tabela de sistema trace_log
allow_key_condition_coalesce_rewrite
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
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
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
allow_minmax_index_for_json
allow_named_collection_override_by_default
allow_non_metadata_alters
allow_nonconst_timezone_arguments
allow_nullable_tuple_in_extracted_subcolumns
Tuple(...) podem ser tipadas como Nullable(Tuple(...)).
false: RetornaTuple(...)e usa os valores padrão da tupla para linhas em que a subcoluna está ausente.true: RetornaNullable(Tuple(...))e usaNULLpara linhas em que a subcoluna está ausente.
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
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
allow_replace_partition_from_empty_source
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
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:
allow_settings_after_format_in_insert:
- 0 — Não permitir.
- 1 — Permitir.
Use esta configuração apenas por compatibilidade retroativa, caso seus casos de uso dependam da sintaxe antiga.