> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# allow_* MergeTree table settings

> ClickHouse MergeTree table settings in the allow_* generated group.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Type</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Default</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Changeable without restart
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

export const ExperimentalBadge = () => {
  return <div className="experimentalBadge">
            <div className="experimentalIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path strokeWidth="1.25" d="M5.5 2H10.5" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M9.50015 2V6.19625L13.4283 12.7425C13.4738 12.8183 13.4985 12.9049 13.4996 12.9934C13.5008 13.0818 13.4785 13.169 13.435 13.246C13.3914 13.323 13.3283 13.3871 13.2519 13.4317C13.1755 13.4764 13.0886 13.4999 13.0002 13.5H3.00015C2.91164 13.5 2.8247 13.4766 2.74822 13.432C2.67174 13.3874 2.60847 13.3233 2.56487 13.2463C2.52126 13.1693 2.49889 13.082 2.50004 12.9935C2.50119 12.905 2.52582 12.8184 2.5714 12.7425L6.50015 6.19625V2" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M4.47656 9.56754C5.30344 9.41254 6.47656 9.47942 7.99969 10.25C10.0153 11.2707 11.4216 11.0569 12.2184 10.7282" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            Experimental feature. <u><a href="/docs/docs/beta-and-experimental-features#experimental-features">Learn more.</a></u>
        </div>;
};

These settings are available in [system.merge\_tree\_settings](/docs/reference/system-tables/merge_tree_settings) and are autogenerated from ClickHouse source.

<h2 id="allow_coalescing_columns_in_partition_or_order_key">
  allow\_coalescing\_columns\_in\_partition\_or\_order\_key
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "0"},{"label": "New setting to allow coalescing of partition or sorting key columns."}]}]} />

When enabled, allows coalescing columns in a CoalescingMergeTree table to be used in
the partition or sorting key.

<h2 id="allow_commit_order_projection">
  allow\_commit\_order\_projection
</h2>

<ExperimentalBadge />

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "0"},{"label": "New setting"}]}]} />

Enables commit-order projections that store `_block_number` and `_block_offset` virtual columns, preserving original insertion order through merges.
Requires `enable_block_number_column` and `enable_block_offset_column` to be enabled.

<h2 id="allow_dimensions_outside_sorting_key">
  allow\_dimensions\_outside\_sorting\_key
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "0"},{"label": "AggregatingMergeTree now rejects, at table creation, schemas where a column is neither part of the sorting key nor an aggregate-state measure; previously such schemas were accepted (the old behavior corresponds to the value 'true')."}]}]} />

In `AggregatingMergeTree`, background merges collapse rows that share the same value of the sorting
key, combining their aggregate states. A column that is neither part of the sorting key nor an
aggregate-state *measure* (`AggregateFunction` or `SimpleAggregateFunction`) is a *dimension*: after
a merge it keeps an arbitrary value of one of the collapsed rows, which silently produces wrong
results for queries that `GROUP BY` or filter on it (see
[https://github.com/ClickHouse/ClickHouse/issues/751](https://github.com/ClickHouse/ClickHouse/issues/751)).

By default, such a schema is rejected when the table is created. Enable this setting if the column is
functionally dependent on the sorting key (so all collapsed rows share the same value) and the
behavior is intentional.

The check applies only to tables that actually aggregate (those with at least one aggregate-state
column) and is skipped when `allow_tuple_element_aggregation` is enabled.

<h2 id="allow_floating_point_partition_key">
  allow\_floating\_point\_partition\_key
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

Enables to allow floating-point number as a partition key.

Possible values:

* `0` — Floating-point partition key not allowed.
* `1` — Floating-point partition key allowed.

<h2 id="allow_minmax_index_for_json">
  allow\_minmax\_index\_for\_json
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "0"},{"label": "Forbid creating minmax skip index on JSON columns by default because the index serialization cannot handle heterogeneous Field values"}]}]} />

Allow creating minmax skip indexes on JSON (Object) columns. Disabled by default because the minmax
index serialization path cannot handle heterogeneous Field values that JSON columns may contain.

<h2 id="allow_nullable_key">
  allow\_nullable\_key
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

Allow Nullable types as primary keys.

<h2 id="allow_part_offset_column_in_projections">
  allow\_part\_offset\_column\_in\_projections
</h2>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "1"},{"label": "Now projections can use _part_offset column."}]}, {"id": "row-2","items": [{"label": "25.5"},{"label": "0"},{"label": "New setting, it protects from creating projections with parent part offset column until it is stabilized."}]}]} />

Allow usage of '\_part\_offset' column in projections select query.

<h2 id="allow_reduce_blocking_parts_task">
  allow\_reduce\_blocking\_parts\_task
</h2>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "1"},{"label": "Now SMT will remove stale blocking parts from ZooKeeper by default"}]}, {"id": "row-2","items": [{"label": "25.1"},{"label": "0"},{"label": "Cloud sync"}]}]} />

Background task which reduces blocking parts for shared merge tree tables.
Only in ClickHouse Cloud

<h2 id="allow_remote_fs_zero_copy_replication">
  allow\_remote\_fs\_zero\_copy\_replication
</h2>

<ExperimentalBadge />

<SettingsInfoBlock type="Bool" default_value="0" />

Don't use this setting in production, because it is not ready.

<h2 id="allow_summing_columns_in_partition_or_order_key">
  allow\_summing\_columns\_in\_partition\_or\_order\_key
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.4"},{"label": "0"},{"label": "New setting to allow summing of partition or sorting key columns"}]}]} />

When enabled, allows summing columns in a SummingMergeTree table to be used in
the partition or sorting key.

<h2 id="allow_suspicious_indices">
  allow\_suspicious\_indices
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

Reject primary/secondary indexes and sorting keys with identical expressions

<h2 id="allow_tuple_element_aggregation">
  allow\_tuple\_element\_aggregation
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.6"},{"label": "0"},{"label": "New setting"}]}]} />

When enabled, individual elements within Tuple columns participate in
aggregation during merge in SummingMergeTree, AggregatingMergeTree, and
CoalescingMergeTree. Nested Tuples are expanded recursively so that all
leaf elements are aggregated independently. This setting is immutable
and must be specified at table creation time.

<h2 id="allow_vertical_merges_from_compact_to_wide_parts">
  allow\_vertical\_merges\_from\_compact\_to\_wide\_parts
</h2>

<SettingsInfoBlock type="Bool" default_value="1" />

Allows vertical merges from compact to wide parts. This settings must have
the same value on all replicas.
