We will create a list of settings and distributions of their values.
The settings will be randomly set before running functional tests, according to the distributions.
This can be implemented as a Python code directly inside clickhouse-test (no need for any configs or DSLs).
Examples:
- enable
convert_query_to_cnf with probability 1/2;
- set
max_block_size uniformly random in a range of 8000..100000;
- set
max_threads uniformly random in a range of 1..64;
If a test needs fixed value of some setting, it should set it explicitly in the test.