Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

allow_nondeterministic_* session settings

These settings are available in system.settings and are autogenerated from source.

allow_nondeterministic_mutations

Type
Bool
Default
0

User-level setting that allows mutations on replicated tables to make use of non-deterministic functions such as dictGet.

Given that, for example, dictionaries, can be out of sync across nodes, mutations that pull values from them are disallowed on replicated tables by default. Enabling this setting allows this behavior, making it the user’s responsibility to ensure that the data used is in sync across all nodes.

Example

<profiles>
    <default>
        <allow_nondeterministic_mutations>1</allow_nondeterministic_mutations>

        <!-- ... -->
    </default>

    <!-- ... -->

</profiles>

allow_nondeterministic_optimize_skip_unused_shards

Type
Bool
Default
0

Allow nondeterministic (like rand or dictGet, since later has some caveats with updates) functions in sharding key.

Possible values:

  • 0 — Disallowed.
  • 1 — Allowed.
Navigation