These settings are available in system.settings and are autogenerated from source.
force_aggregate_partitions_independently
Force the use of optimization when it is applicable, but heuristics decided not to use it
force_aggregation_in_order
The setting is used by the server itself to support distributed queries. Do not change it manually, because it will break normal operations. (Forces use of aggregation in order on remote nodes during distributed aggregation).
force_data_skipping_indices
Disables query execution if passed data skipping indices wasn’t used.
Consider the following example:
force_grouping_standard_compatibility
Make GROUPING function to return 1 when argument is not used as an aggregation key
force_index_by_date
Disables query execution if the index can’t be used by date.
Works with tables in the MergeTree family.
If force_index_by_date=1, ClickHouse checks whether the query has a date key condition that can be used for restricting data ranges. If there is no suitable condition, it throws an exception. However, it does not check whether the condition reduces the amount of data to read. For example, the condition Date != ' 2000-01-01 ' is acceptable even when it matches all the data in the table (i.e., running the query requires a full scan). For more information about ranges of data in MergeTree tables, see MergeTree.
force_primary_key
Disables query execution if indexing by the primary key is not possible.
Works with tables in the MergeTree family.
If force_primary_key=1, ClickHouse checks to see if the query has a primary key condition that can be used for restricting data ranges. If there is no suitable condition, it throws an exception. However, it does not check whether the condition reduces the amount of data to read. For more information about data ranges in MergeTree tables, see MergeTree.
force_remove_data_recursively_on_drop
Recursively remove data on DROP query. Avoids ‘Directory not empty’ error, but may silently remove detached data Last modified on July 22, 2026