Last active
September 6, 2024 11:49
-
-
Save ochaton/24957db1617df119b30b5e7cec05e3cf to your computer and use it in GitHub Desktop.
Generate JSON schema for Tarantool's cluster configuration by @Totktonada
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env tarantool | |
local json = require('json') | |
local cluster_config = require('internal.config.cluster_config') | |
local scalars = {} | |
scalars.string = { | |
jsonschema = { | |
type = 'string', | |
}, | |
} | |
scalars.number = { | |
jsonschema = { | |
type = 'number', | |
}, | |
} | |
scalars['string, number'] = { | |
jsonschema = { | |
type = {'string', 'number'}, | |
}, | |
} | |
scalars['number, string'] = { | |
jsonschema = { | |
type = {'string', 'number'}, | |
}, | |
} | |
scalars.integer = { | |
jsonschema = { | |
type = 'integer', | |
}, | |
} | |
scalars.boolean = { | |
jsonschema = { | |
type = 'boolean', | |
}, | |
} | |
scalars.any = { | |
jsonschema = {}, | |
} | |
local function is_scalar(schema) | |
return scalars[schema.type] ~= nil | |
end | |
local function extract_validate_no_repeat() | |
local schema = require('internal.config.utils.schema') | |
local nups = debug.getinfo(schema.set).nups | |
for i = 1, nups do | |
local k, v = debug.getupvalue(schema.set, i) | |
if k == 'validate_no_repeat' then | |
return v | |
end | |
end | |
end | |
local validate_no_repeat = extract_validate_no_repeat() | |
assert(type(validate_no_repeat) == 'function') | |
local function set_common_fields(res, schema) | |
-- Ignores apply_default_if. | |
res.default = schema.default | |
res.enum = schema.allowed_values | |
return setmetatable(res, { | |
__serialize = 'map', | |
}) | |
end | |
local function traverse_impl(schema) | |
if is_scalar(schema) then | |
local scalar_def = scalars[schema.type] | |
assert(scalar_def ~= nil) | |
return set_common_fields(table.copy(scalar_def.jsonschema), schema) | |
elseif schema.type == 'record' then | |
local properties = {} | |
for field_name, field_def in pairs(schema.fields) do | |
properties[field_name] = traverse_impl(field_def) | |
end | |
return set_common_fields({ | |
type = 'object', | |
properties = properties, | |
additionalProperties = false, | |
}, schema) | |
elseif schema.type == 'map' then | |
assert(schema.key.type == 'string') | |
return set_common_fields({ | |
type = 'object', | |
additionalProperties = traverse_impl(schema.value), | |
}, schema) | |
elseif schema.type == 'array' then | |
local res = { | |
type = 'array', | |
items = traverse_impl(schema.items), | |
} | |
if schema.validate == validate_no_repeat then | |
res.uniqueItems = true | |
end | |
return set_common_fields(res, schema) | |
else | |
assert(false) | |
end | |
end | |
local function traverse(schema_obj) | |
local res = traverse_impl(rawget(schema_obj, 'schema')) | |
res['$schema'] = 'https://json-schema.org/draft/2020-12/schema' | |
return res | |
end | |
local jsonschema = traverse(cluster_config) | |
print(json.encode(jsonschema)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"fiber":{"type":"object","additionalProperties":false,"properties":{"io_collect_interval":{"type":"number","default":null},"too_long_threshold":{"type":"number","default":0.5},"top":{"type":"object","additionalProperties":false,"properties":{"enabled":{"type":"boolean","default":false}}},"slice":{"type":"object","additionalProperties":false,"properties":{"err":{"type":"number","default":1},"warn":{"type":"number","default":0.5}}},"worker_pool_threads":{"type":"number","default":4}}},"wal":{"type":"object","additionalProperties":false,"properties":{"ext":{"type":"object","properties":{"spaces":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"old":{"type":"boolean","default":false},"new":{"type":"boolean","default":false}}}},"old":{"type":"boolean"},"new":{"type":"boolean"}},"additionalProperties":false,"default":null},"queue_max_size":{"type":"integer","default":16777216},"dir_rescan_delay":{"type":"number","default":2},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"},"retention_period":{"type":"number","default":0},"cleanup_delay":{"type":"number","default":14400},"mode":{"type":"string","enum":["none","write","fsync"],"default":"write"},"max_size":{"type":"integer","default":268435456}}},"failover":{"type":"object","additionalProperties":false,"properties":{"connect_timeout":{"type":"number","default":1},"renew_interval":{"type":"number","default":10},"call_timeout":{"type":"number","default":1},"probe_interval":{"type":"number","default":10},"lease_interval":{"type":"number","default":30},"stateboard":{"type":"object","additionalProperties":false,"properties":{"renew_interval":{"type":"number","default":2},"keepalive_interval":{"type":"number","default":10}}}}},"log":{"type":"object","additionalProperties":false,"properties":{"level":{"type":["string","number"],"enum":[0,"fatal",1,"syserror",2,"error",3,"crit",4,"warn",5,"info",6,"verbose",7,"debug"],"default":5},"format":{"type":"string","enum":["plain","json"],"default":"plain"},"syslog":{"type":"object","additionalProperties":false,"properties":{"identity":{"type":"string","default":"tarantool"},"server":{"type":"string","default":null},"facility":{"type":"string","default":"local7"}}},"modules":{"type":"object","default":null,"additionalProperties":{"type":["string","number"]}},"file":{"type":"string","default":"var/log/{{ instance_name }}/tarantool.log"},"nonblock":{"type":"boolean","default":false},"to":{"type":"string","enum":["stderr","file","pipe","syslog"],"default":"stderr"},"pipe":{"type":"string","default":null}}},"iproto":{"type":"object","additionalProperties":false,"properties":{"readahead":{"type":"integer","default":16320},"net_msg_max":{"type":"integer","default":768},"listen":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"uri":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_key_file":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_password":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}}}}},"threads":{"type":"integer","default":1},"advertise":{"type":"object","additionalProperties":false,"properties":{"peer":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_key_file":{"type":"string"},"ssl_password":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}},"client":{"type":"string","default":null},"sharding":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_key_file":{"type":"string"},"ssl_password":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}}}}}},"metrics":{"type":"object","additionalProperties":false,"properties":{"labels":{"type":"object","additionalProperties":{"type":"string"}},"include":{"type":"array","items":{"type":"string","enum":["all","network","operations","system","replicas","info","slab","runtime","memory","spaces","fibers","cpu","vinyl","memtx","luajit","clock","event_loop"]},"uniqueItems":true},"exclude":{"type":"array","items":{"type":"string","enum":["all","network","operations","system","replicas","info","slab","runtime","memory","spaces","fibers","cpu","vinyl","memtx","luajit","clock","event_loop"]},"uniqueItems":true}}},"conditional":{"type":"array","items":{"type":"object","additionalProperties":{}}},"roles":{"type":"array","items":{"type":"string"}},"app":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string"},"module":{"type":"string"},"cfg":{"type":"object","additionalProperties":{}}}},"roles_cfg":{"type":"object","additionalProperties":{}},"replication":{"type":"object","additionalProperties":false,"properties":{"connect_timeout":{"type":"number","default":30},"sync_lag":{"type":"number","default":10},"failover":{"type":"string","enum":["off","manual","election","supervised"],"default":"off"},"skip_conflict":{"type":"boolean","default":false},"sync_timeout":{"type":"number","default":null},"timeout":{"type":"number","default":1},"synchro_quorum":{"type":["string","number"],"default":"N / 2 + 1"},"election_mode":{"type":"string","enum":["off","voter","manual","candidate"],"default":null},"bootstrap_strategy":{"type":"string","enum":["auto","config","supervised","legacy"],"default":"auto"},"election_timeout":{"type":"number","default":5},"synchro_timeout":{"type":"number","default":5},"election_fencing_mode":{"type":"string","enum":["off","soft","strict"],"default":"soft"},"peers":{"type":"array","items":{"type":"string"},"default":null},"anon":{"type":"boolean","default":false},"threads":{"type":"integer","default":1}}},"compat":{"type":"object","additionalProperties":false,"properties":{"sql_priv":{"type":"string","enum":["old","new"],"default":"new"},"binary_data_decoding":{"type":"string","enum":["old","new"],"default":"new"},"sql_seq_scan_default":{"type":"string","enum":["old","new"],"default":"new"},"box_cfg_replication_sync_timeout":{"type":"string","enum":["old","new"],"default":"new"},"box_tuple_new_vararg":{"type":"string","enum":["old","new"],"default":"new"},"console_session_scope_vars":{"type":"string","enum":["old","new"],"default":"old"},"json_escape_forward_slash":{"type":"string","enum":["old","new"],"default":"new"},"box_space_max":{"type":"string","enum":["old","new"],"default":"new"},"box_space_execute_priv":{"type":"string","enum":["old","new"],"default":"new"},"fiber_channel_close_mode":{"type":"string","enum":["old","new"],"default":"new"},"box_error_unpack_type_and_code":{"type":"string","enum":["old","new"],"default":"old"},"box_session_push_deprecation":{"type":"string","enum":["old","new"],"default":"old"},"c_func_iproto_multireturn":{"type":"string","enum":["old","new"],"default":"new"},"box_consider_system_spaces_synchronous":{"type":"string","enum":["old","new"],"default":"old"},"box_error_serialize_verbose":{"type":"string","enum":["old","new"],"default":"old"},"box_tuple_extension":{"type":"string","enum":["old","new"],"default":"new"},"yaml_pretty_multiline":{"type":"string","enum":["old","new"],"default":"new"},"box_info_cluster_meaning":{"type":"string","enum":["old","new"],"default":"new"},"fiber_slice_default":{"type":"string","enum":["old","new"],"default":"new"}}},"console":{"type":"object","additionalProperties":false,"properties":{"socket":{"type":"string","default":"var/run/{{ instance_name }}/tarantool.control"},"enabled":{"type":"boolean","default":true}}},"credentials":{"type":"object","additionalProperties":false,"properties":{"roles":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"privileges":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"lua_eval":{"type":"boolean"},"spaces":{"type":"array","items":{"type":"string"}},"sql":{"type":"array","items":{"type":"string","enum":["all"]}},"lua_call":{"type":"array","items":{"type":"string"}},"universe":{"type":"boolean"},"functions":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string","enum":["read","write","execute","create","alter","drop","usage","session"]},"uniqueItems":true},"sequences":{"type":"array","items":{"type":"string"}}}}},"roles":{"type":"array","items":{"type":"string"}}}}},"users":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"roles":{"type":"array","items":{"type":"string"}},"privileges":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"lua_eval":{"type":"boolean"},"spaces":{"type":"array","items":{"type":"string"}},"sql":{"type":"array","items":{"type":"string","enum":["all"]}},"lua_call":{"type":"array","items":{"type":"string"}},"universe":{"type":"boolean"},"functions":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string","enum":["read","write","execute","create","alter","drop","usage","session"]},"uniqueItems":true},"sequences":{"type":"array","items":{"type":"string"}}}}}}}}}},"sql":{"type":"object","additionalProperties":false,"properties":{"cache_size":{"type":"integer","default":5242880}}},"labels":{"type":"object","additionalProperties":{"type":"string"}},"sharding":{"type":"object","additionalProperties":false,"properties":{"rebalancer_max_receiving":{"type":"integer","default":100},"weight":{"type":"number","default":1},"shard_index":{"type":"string","default":"bucket_id"},"sync_timeout":{"type":"number","default":1},"discovery_mode":{"type":"string","enum":["on","off","once"],"default":"on"},"sched_ref_quota":{"type":"number","default":300},"lock":{"type":"boolean"},"zone":{"type":"integer"},"rebalancer_mode":{"type":"string","enum":["manual","auto","off"],"default":"auto"},"failover_ping_timeout":{"type":"number","default":5},"rebalancer_max_sending":{"type":"integer","default":1},"bucket_count":{"type":"integer","default":3000},"rebalancer_disbalance_threshold":{"type":"number","default":1},"connection_outdate_delay":{"type":"number"},"roles":{"type":"array","items":{"type":"string","enum":["router","storage","rebalancer"]},"uniqueItems":true},"sched_move_quota":{"type":"number","default":1}}},"snapshot":{"type":"object","additionalProperties":false,"properties":{"snap_io_rate_limit":{"type":"number","default":null},"by":{"type":"object","additionalProperties":false,"properties":{"wal_size":{"type":"integer","default":1000000000000000000},"interval":{"type":"number","default":3600}}},"count":{"type":"integer","default":2},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"}}},"security":{"type":"object","additionalProperties":false,"properties":{"password_enforce_specialchars":{"type":"boolean","default":false},"secure_erasing":{"type":"boolean","default":false},"password_min_length":{"type":"integer","default":0},"password_history_length":{"type":"integer","default":0},"password_lifetime_days":{"type":"integer","default":0},"auth_type":{"type":"string","enum":["chap-sha1","pap-sha256"],"default":"chap-sha1"},"password_enforce_digits":{"type":"boolean","default":false},"password_enforce_lowercase":{"type":"boolean","default":false},"auth_retries":{"type":"integer","default":0},"disable_guest":{"type":"boolean","default":false},"auth_delay":{"type":"number","default":0},"password_enforce_uppercase":{"type":"boolean","default":false}}},"process":{"type":"object","additionalProperties":false,"properties":{"pid_file":{"type":"string","default":"var/run/{{ instance_name }}/tarantool.pid"},"work_dir":{"type":"string","default":null},"coredump":{"type":"boolean","default":false},"username":{"type":"string","default":null},"background":{"type":"boolean","default":false},"title":{"type":"string","default":"tarantool - {{ instance_name }}"},"strip_core":{"type":"boolean","default":true}}},"audit_log":{"type":"object","additionalProperties":false,"properties":{"format":{"type":"string","enum":["plain","json","csv"],"default":"json"},"syslog":{"type":"object","additionalProperties":false,"properties":{"identity":{"type":"string","default":"tarantool"},"server":{"type":"string","default":null},"facility":{"type":"string","default":"local7"}}},"file":{"type":"string","default":"var/log/{{ instance_name }}/audit.log"},"pipe":{"type":"string","default":null},"filter":{"type":"array","items":{"type":"string","enum":["audit_enable","custom","auth_ok","auth_fail","disconnect","user_create","user_drop","role_create","role_drop","user_enable","user_disable","user_grant_rights","user_revoke_rights","role_grant_rights","role_revoke_rights","password_change","access_denied","eval","call","space_select","space_create","space_alter","space_drop","space_insert","space_replace","space_delete","none","all","audit","auth","priv","ddl","dml","data_operations","compatibility"]},"uniqueItems":true},"spaces":{"type":"array","items":{"type":"string"},"default":null},"extract_key":{"type":"boolean","default":false},"to":{"type":"string","enum":["devnull","file","pipe","syslog"],"default":"devnull"},"nonblock":{"type":"boolean","default":false}}},"database":{"type":"object","additionalProperties":false,"properties":{"use_mvcc_engine":{"type":"boolean","default":false},"instance_uuid":{"type":"string","default":null},"txn_timeout":{"type":"number","default":3153600000},"txn_isolation":{"type":"string","enum":["read-committed","read-confirmed","best-effort"],"default":"best-effort"},"replicaset_uuid":{"type":"string","default":null},"mode":{"type":"string","enum":["ro","rw"],"default":null},"hot_standby":{"type":"boolean","default":false}}},"feedback":{"type":"object","additionalProperties":false,"properties":{"host":{"type":"string","default":"https://feedback.tarantool.io"},"metrics_collect_interval":{"type":"number","default":60},"metrics_limit":{"type":"integer","default":1048576},"send_metrics":{"type":"boolean","default":true},"crashinfo":{"type":"boolean","default":true},"enabled":{"type":"boolean","default":true},"interval":{"type":"number","default":3600}}},"flightrec":{"type":"object","additionalProperties":false,"properties":{"logs_size":{"type":"integer","default":10485760},"logs_max_msg_size":{"type":"integer","default":4096},"requests_size":{"type":"integer","default":10485760},"logs_log_level":{"type":"integer","enum":[0,1,2,3,4,5,6,7],"default":6},"requests_max_req_size":{"type":"integer","default":16384},"metrics_period":{"type":"number","default":180},"enabled":{"type":"boolean","default":false},"requests_max_res_size":{"type":"integer","default":16384},"metrics_interval":{"type":"number","default":1}}},"vinyl":{"type":"object","additionalProperties":false,"properties":{"page_size":{"type":"integer","default":8192},"run_count_per_level":{"type":"integer","default":2},"read_threads":{"type":"integer","default":1},"write_threads":{"type":"integer","default":4},"timeout":{"type":"number","default":60},"cache":{"type":"integer","default":134217728},"run_size_ratio":{"type":"number","default":3.5},"max_tuple_size":{"type":"integer","default":1048576},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"},"bloom_fpr":{"type":"number","default":0.05},"defer_deletes":{"type":"boolean","default":false},"memory":{"type":"integer","default":134217728},"range_size":{"type":"integer","default":null}}},"groups":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"fiber":{"type":"object","additionalProperties":false,"properties":{"io_collect_interval":{"type":"number","default":null},"too_long_threshold":{"type":"number","default":0.5},"top":{"type":"object","additionalProperties":false,"properties":{"enabled":{"type":"boolean","default":false}}},"slice":{"type":"object","additionalProperties":false,"properties":{"err":{"type":"number","default":1},"warn":{"type":"number","default":0.5}}},"worker_pool_threads":{"type":"number","default":4}}},"wal":{"type":"object","additionalProperties":false,"properties":{"ext":{"type":"object","properties":{"spaces":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"old":{"type":"boolean","default":false},"new":{"type":"boolean","default":false}}}},"old":{"type":"boolean"},"new":{"type":"boolean"}},"additionalProperties":false,"default":null},"queue_max_size":{"type":"integer","default":16777216},"dir_rescan_delay":{"type":"number","default":2},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"},"retention_period":{"type":"number","default":0},"cleanup_delay":{"type":"number","default":14400},"mode":{"type":"string","enum":["none","write","fsync"],"default":"write"},"max_size":{"type":"integer","default":268435456}}},"failover":{"type":"object","additionalProperties":false,"properties":{"connect_timeout":{"type":"number","default":1},"renew_interval":{"type":"number","default":10},"call_timeout":{"type":"number","default":1},"probe_interval":{"type":"number","default":10},"lease_interval":{"type":"number","default":30},"stateboard":{"type":"object","additionalProperties":false,"properties":{"renew_interval":{"type":"number","default":2},"keepalive_interval":{"type":"number","default":10}}}}},"log":{"type":"object","additionalProperties":false,"properties":{"level":{"type":["string","number"],"enum":[0,"fatal",1,"syserror",2,"error",3,"crit",4,"warn",5,"info",6,"verbose",7,"debug"],"default":5},"format":{"type":"string","enum":["plain","json"],"default":"plain"},"syslog":{"type":"object","additionalProperties":false,"properties":{"identity":{"type":"string","default":"tarantool"},"server":{"type":"string","default":null},"facility":{"type":"string","default":"local7"}}},"modules":{"type":"object","default":null,"additionalProperties":{"type":["string","number"]}},"file":{"type":"string","default":"var/log/{{ instance_name }}/tarantool.log"},"nonblock":{"type":"boolean","default":false},"to":{"type":"string","enum":["stderr","file","pipe","syslog"],"default":"stderr"},"pipe":{"type":"string","default":null}}},"iproto":{"type":"object","additionalProperties":false,"properties":{"readahead":{"type":"integer","default":16320},"net_msg_max":{"type":"integer","default":768},"listen":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"uri":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_key_file":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_password":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}}}}},"threads":{"type":"integer","default":1},"advertise":{"type":"object","additionalProperties":false,"properties":{"peer":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_key_file":{"type":"string"},"ssl_password":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}},"client":{"type":"string","default":null},"sharding":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_key_file":{"type":"string"},"ssl_password":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}}}}}},"replicasets":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"fiber":{"type":"object","additionalProperties":false,"properties":{"io_collect_interval":{"type":"number","default":null},"too_long_threshold":{"type":"number","default":0.5},"top":{"type":"object","additionalProperties":false,"properties":{"enabled":{"type":"boolean","default":false}}},"slice":{"type":"object","additionalProperties":false,"properties":{"err":{"type":"number","default":1},"warn":{"type":"number","default":0.5}}},"worker_pool_threads":{"type":"number","default":4}}},"wal":{"type":"object","additionalProperties":false,"properties":{"ext":{"type":"object","properties":{"spaces":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"old":{"type":"boolean","default":false},"new":{"type":"boolean","default":false}}}},"old":{"type":"boolean"},"new":{"type":"boolean"}},"additionalProperties":false,"default":null},"queue_max_size":{"type":"integer","default":16777216},"dir_rescan_delay":{"type":"number","default":2},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"},"retention_period":{"type":"number","default":0},"cleanup_delay":{"type":"number","default":14400},"mode":{"type":"string","enum":["none","write","fsync"],"default":"write"},"max_size":{"type":"integer","default":268435456}}},"failover":{"type":"object","additionalProperties":false,"properties":{"connect_timeout":{"type":"number","default":1},"renew_interval":{"type":"number","default":10},"call_timeout":{"type":"number","default":1},"probe_interval":{"type":"number","default":10},"lease_interval":{"type":"number","default":30},"stateboard":{"type":"object","additionalProperties":false,"properties":{"renew_interval":{"type":"number","default":2},"keepalive_interval":{"type":"number","default":10}}}}},"log":{"type":"object","additionalProperties":false,"properties":{"level":{"type":["string","number"],"enum":[0,"fatal",1,"syserror",2,"error",3,"crit",4,"warn",5,"info",6,"verbose",7,"debug"],"default":5},"format":{"type":"string","enum":["plain","json"],"default":"plain"},"syslog":{"type":"object","additionalProperties":false,"properties":{"identity":{"type":"string","default":"tarantool"},"server":{"type":"string","default":null},"facility":{"type":"string","default":"local7"}}},"modules":{"type":"object","default":null,"additionalProperties":{"type":["string","number"]}},"file":{"type":"string","default":"var/log/{{ instance_name }}/tarantool.log"},"nonblock":{"type":"boolean","default":false},"to":{"type":"string","enum":["stderr","file","pipe","syslog"],"default":"stderr"},"pipe":{"type":"string","default":null}}},"iproto":{"type":"object","additionalProperties":false,"properties":{"readahead":{"type":"integer","default":16320},"net_msg_max":{"type":"integer","default":768},"listen":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"uri":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_key_file":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_password":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}}}}},"threads":{"type":"integer","default":1},"advertise":{"type":"object","additionalProperties":false,"properties":{"peer":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_key_file":{"type":"string"},"ssl_password":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}},"client":{"type":"string","default":null},"sharding":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_key_file":{"type":"string"},"ssl_password":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}}}}}},"metrics":{"type":"object","additionalProperties":false,"properties":{"labels":{"type":"object","additionalProperties":{"type":"string"}},"include":{"type":"array","items":{"type":"string","enum":["all","network","operations","system","replicas","info","slab","runtime","memory","spaces","fibers","cpu","vinyl","memtx","luajit","clock","event_loop"]},"uniqueItems":true},"exclude":{"type":"array","items":{"type":"string","enum":["all","network","operations","system","replicas","info","slab","runtime","memory","spaces","fibers","cpu","vinyl","memtx","luajit","clock","event_loop"]},"uniqueItems":true}}},"memtx":{"type":"object","additionalProperties":false,"properties":{"sort_threads":{"type":"integer","default":null},"min_tuple_size":{"type":"integer","default":16},"slab_alloc_factor":{"type":"number","default":1.05},"allocator":{"type":"string","enum":["small","system"],"default":"small"},"max_tuple_size":{"type":"integer","default":1048576},"memory":{"type":"integer","default":268435456},"slab_alloc_granularity":{"type":"integer","default":8}}},"console":{"type":"object","additionalProperties":false,"properties":{"socket":{"type":"string","default":"var/run/{{ instance_name }}/tarantool.control"},"enabled":{"type":"boolean","default":true}}},"bootstrap_leader":{"type":"string"},"app":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string"},"module":{"type":"string"},"cfg":{"type":"object","additionalProperties":{}}}},"roles_cfg":{"type":"object","additionalProperties":{}},"replication":{"type":"object","additionalProperties":false,"properties":{"connect_timeout":{"type":"number","default":30},"sync_lag":{"type":"number","default":10},"failover":{"type":"string","enum":["off","manual","election","supervised"],"default":"off"},"skip_conflict":{"type":"boolean","default":false},"sync_timeout":{"type":"number","default":null},"timeout":{"type":"number","default":1},"synchro_quorum":{"type":["string","number"],"default":"N / 2 + 1"},"election_mode":{"type":"string","enum":["off","voter","manual","candidate"],"default":null},"bootstrap_strategy":{"type":"string","enum":["auto","config","supervised","legacy"],"default":"auto"},"election_timeout":{"type":"number","default":5},"synchro_timeout":{"type":"number","default":5},"election_fencing_mode":{"type":"string","enum":["off","soft","strict"],"default":"soft"},"peers":{"type":"array","items":{"type":"string"},"default":null},"anon":{"type":"boolean","default":false},"threads":{"type":"integer","default":1}}},"labels":{"type":"object","additionalProperties":{"type":"string"}},"roles":{"type":"array","items":{"type":"string"}},"credentials":{"type":"object","additionalProperties":false,"properties":{"roles":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"privileges":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"lua_eval":{"type":"boolean"},"spaces":{"type":"array","items":{"type":"string"}},"sql":{"type":"array","items":{"type":"string","enum":["all"]}},"lua_call":{"type":"array","items":{"type":"string"}},"universe":{"type":"boolean"},"functions":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string","enum":["read","write","execute","create","alter","drop","usage","session"]},"uniqueItems":true},"sequences":{"type":"array","items":{"type":"string"}}}}},"roles":{"type":"array","items":{"type":"string"}}}}},"users":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"roles":{"type":"array","items":{"type":"string"}},"privileges":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"lua_eval":{"type":"boolean"},"spaces":{"type":"array","items":{"type":"string"}},"sql":{"type":"array","items":{"type":"string","enum":["all"]}},"lua_call":{"type":"array","items":{"type":"string"}},"universe":{"type":"boolean"},"functions":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string","enum":["read","write","execute","create","alter","drop","usage","session"]},"uniqueItems":true},"sequences":{"type":"array","items":{"type":"string"}}}}}}}}}},"sql":{"type":"object","additionalProperties":false,"properties":{"cache_size":{"type":"integer","default":5242880}}},"security":{"type":"object","additionalProperties":false,"properties":{"password_enforce_specialchars":{"type":"boolean","default":false},"secure_erasing":{"type":"boolean","default":false},"password_min_length":{"type":"integer","default":0},"password_history_length":{"type":"integer","default":0},"password_lifetime_days":{"type":"integer","default":0},"auth_type":{"type":"string","enum":["chap-sha1","pap-sha256"],"default":"chap-sha1"},"password_enforce_digits":{"type":"boolean","default":false},"password_enforce_lowercase":{"type":"boolean","default":false},"auth_retries":{"type":"integer","default":0},"disable_guest":{"type":"boolean","default":false},"auth_delay":{"type":"number","default":0},"password_enforce_uppercase":{"type":"boolean","default":false}}},"sharding":{"type":"object","additionalProperties":false,"properties":{"rebalancer_max_receiving":{"type":"integer","default":100},"weight":{"type":"number","default":1},"shard_index":{"type":"string","default":"bucket_id"},"sync_timeout":{"type":"number","default":1},"discovery_mode":{"type":"string","enum":["on","off","once"],"default":"on"},"sched_ref_quota":{"type":"number","default":300},"lock":{"type":"boolean"},"zone":{"type":"integer"},"rebalancer_mode":{"type":"string","enum":["manual","auto","off"],"default":"auto"},"failover_ping_timeout":{"type":"number","default":5},"rebalancer_max_sending":{"type":"integer","default":1},"bucket_count":{"type":"integer","default":3000},"rebalancer_disbalance_threshold":{"type":"number","default":1},"connection_outdate_delay":{"type":"number"},"roles":{"type":"array","items":{"type":"string","enum":["router","storage","rebalancer"]},"uniqueItems":true},"sched_move_quota":{"type":"number","default":1}}},"snapshot":{"type":"object","additionalProperties":false,"properties":{"snap_io_rate_limit":{"type":"number","default":null},"by":{"type":"object","additionalProperties":false,"properties":{"wal_size":{"type":"integer","default":1000000000000000000},"interval":{"type":"number","default":3600}}},"count":{"type":"integer","default":2},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"}}},"vinyl":{"type":"object","additionalProperties":false,"properties":{"page_size":{"type":"integer","default":8192},"run_count_per_level":{"type":"integer","default":2},"read_threads":{"type":"integer","default":1},"write_threads":{"type":"integer","default":4},"timeout":{"type":"number","default":60},"cache":{"type":"integer","default":134217728},"run_size_ratio":{"type":"number","default":3.5},"max_tuple_size":{"type":"integer","default":1048576},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"},"bloom_fpr":{"type":"number","default":0.05},"defer_deletes":{"type":"boolean","default":false},"memory":{"type":"integer","default":134217728},"range_size":{"type":"integer","default":null}}},"process":{"type":"object","additionalProperties":false,"properties":{"pid_file":{"type":"string","default":"var/run/{{ instance_name }}/tarantool.pid"},"work_dir":{"type":"string","default":null},"coredump":{"type":"boolean","default":false},"username":{"type":"string","default":null},"background":{"type":"boolean","default":false},"title":{"type":"string","default":"tarantool - {{ instance_name }}"},"strip_core":{"type":"boolean","default":true}}},"audit_log":{"type":"object","additionalProperties":false,"properties":{"format":{"type":"string","enum":["plain","json","csv"],"default":"json"},"syslog":{"type":"object","additionalProperties":false,"properties":{"identity":{"type":"string","default":"tarantool"},"server":{"type":"string","default":null},"facility":{"type":"string","default":"local7"}}},"file":{"type":"string","default":"var/log/{{ instance_name }}/audit.log"},"pipe":{"type":"string","default":null},"filter":{"type":"array","items":{"type":"string","enum":["audit_enable","custom","auth_ok","auth_fail","disconnect","user_create","user_drop","role_create","role_drop","user_enable","user_disable","user_grant_rights","user_revoke_rights","role_grant_rights","role_revoke_rights","password_change","access_denied","eval","call","space_select","space_create","space_alter","space_drop","space_insert","space_replace","space_delete","none","all","audit","auth","priv","ddl","dml","data_operations","compatibility"]},"uniqueItems":true},"spaces":{"type":"array","items":{"type":"string"},"default":null},"extract_key":{"type":"boolean","default":false},"to":{"type":"string","enum":["devnull","file","pipe","syslog"],"default":"devnull"},"nonblock":{"type":"boolean","default":false}}},"database":{"type":"object","additionalProperties":false,"properties":{"use_mvcc_engine":{"type":"boolean","default":false},"instance_uuid":{"type":"string","default":null},"txn_timeout":{"type":"number","default":3153600000},"txn_isolation":{"type":"string","enum":["read-committed","read-confirmed","best-effort"],"default":"best-effort"},"replicaset_uuid":{"type":"string","default":null},"mode":{"type":"string","enum":["ro","rw"],"default":null},"hot_standby":{"type":"boolean","default":false}}},"feedback":{"type":"object","additionalProperties":false,"properties":{"host":{"type":"string","default":"https://feedback.tarantool.io"},"metrics_collect_interval":{"type":"number","default":60},"metrics_limit":{"type":"integer","default":1048576},"send_metrics":{"type":"boolean","default":true},"crashinfo":{"type":"boolean","default":true},"enabled":{"type":"boolean","default":true},"interval":{"type":"number","default":3600}}},"instances":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"fiber":{"type":"object","additionalProperties":false,"properties":{"io_collect_interval":{"type":"number","default":null},"too_long_threshold":{"type":"number","default":0.5},"top":{"type":"object","additionalProperties":false,"properties":{"enabled":{"type":"boolean","default":false}}},"slice":{"type":"object","additionalProperties":false,"properties":{"err":{"type":"number","default":1},"warn":{"type":"number","default":0.5}}},"worker_pool_threads":{"type":"number","default":4}}},"wal":{"type":"object","additionalProperties":false,"properties":{"ext":{"type":"object","properties":{"spaces":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"old":{"type":"boolean","default":false},"new":{"type":"boolean","default":false}}}},"old":{"type":"boolean"},"new":{"type":"boolean"}},"additionalProperties":false,"default":null},"queue_max_size":{"type":"integer","default":16777216},"dir_rescan_delay":{"type":"number","default":2},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"},"retention_period":{"type":"number","default":0},"cleanup_delay":{"type":"number","default":14400},"mode":{"type":"string","enum":["none","write","fsync"],"default":"write"},"max_size":{"type":"integer","default":268435456}}},"failover":{"type":"object","additionalProperties":false,"properties":{"connect_timeout":{"type":"number","default":1},"renew_interval":{"type":"number","default":10},"call_timeout":{"type":"number","default":1},"probe_interval":{"type":"number","default":10},"lease_interval":{"type":"number","default":30},"stateboard":{"type":"object","additionalProperties":false,"properties":{"renew_interval":{"type":"number","default":2},"keepalive_interval":{"type":"number","default":10}}}}},"log":{"type":"object","additionalProperties":false,"properties":{"level":{"type":["string","number"],"enum":[0,"fatal",1,"syserror",2,"error",3,"crit",4,"warn",5,"info",6,"verbose",7,"debug"],"default":5},"format":{"type":"string","enum":["plain","json"],"default":"plain"},"syslog":{"type":"object","additionalProperties":false,"properties":{"identity":{"type":"string","default":"tarantool"},"server":{"type":"string","default":null},"facility":{"type":"string","default":"local7"}}},"modules":{"type":"object","default":null,"additionalProperties":{"type":["string","number"]}},"file":{"type":"string","default":"var/log/{{ instance_name }}/tarantool.log"},"nonblock":{"type":"boolean","default":false},"to":{"type":"string","enum":["stderr","file","pipe","syslog"],"default":"stderr"},"pipe":{"type":"string","default":null}}},"feedback":{"type":"object","additionalProperties":false,"properties":{"host":{"type":"string","default":"https://feedback.tarantool.io"},"metrics_collect_interval":{"type":"number","default":60},"metrics_limit":{"type":"integer","default":1048576},"send_metrics":{"type":"boolean","default":true},"crashinfo":{"type":"boolean","default":true},"enabled":{"type":"boolean","default":true},"interval":{"type":"number","default":3600}}},"roles_cfg":{"type":"object","additionalProperties":{}},"app":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string"},"module":{"type":"string"},"cfg":{"type":"object","additionalProperties":{}}}},"console":{"type":"object","additionalProperties":false,"properties":{"socket":{"type":"string","default":"var/run/{{ instance_name }}/tarantool.control"},"enabled":{"type":"boolean","default":true}}},"replication":{"type":"object","additionalProperties":false,"properties":{"connect_timeout":{"type":"number","default":30},"sync_lag":{"type":"number","default":10},"failover":{"type":"string","enum":["off","manual","election","supervised"],"default":"off"},"skip_conflict":{"type":"boolean","default":false},"sync_timeout":{"type":"number","default":null},"timeout":{"type":"number","default":1},"synchro_quorum":{"type":["string","number"],"default":"N / 2 + 1"},"election_mode":{"type":"string","enum":["off","voter","manual","candidate"],"default":null},"bootstrap_strategy":{"type":"string","enum":["auto","config","supervised","legacy"],"default":"auto"},"election_timeout":{"type":"number","default":5},"synchro_timeout":{"type":"number","default":5},"election_fencing_mode":{"type":"string","enum":["off","soft","strict"],"default":"soft"},"peers":{"type":"array","items":{"type":"string"},"default":null},"anon":{"type":"boolean","default":false},"threads":{"type":"integer","default":1}}},"compat":{"type":"object","additionalProperties":false,"properties":{"sql_priv":{"type":"string","enum":["old","new"],"default":"new"},"binary_data_decoding":{"type":"string","enum":["old","new"],"default":"new"},"sql_seq_scan_default":{"type":"string","enum":["old","new"],"default":"new"},"box_cfg_replication_sync_timeout":{"type":"string","enum":["old","new"],"default":"new"},"box_tuple_new_vararg":{"type":"string","enum":["old","new"],"default":"new"},"console_session_scope_vars":{"type":"string","enum":["old","new"],"default":"old"},"json_escape_forward_slash":{"type":"string","enum":["old","new"],"default":"new"},"box_space_max":{"type":"string","enum":["old","new"],"default":"new"},"box_space_execute_priv":{"type":"string","enum":["old","new"],"default":"new"},"fiber_channel_close_mode":{"type":"string","enum":["old","new"],"default":"new"},"box_error_unpack_type_and_code":{"type":"string","enum":["old","new"],"default":"old"},"box_session_push_deprecation":{"type":"string","enum":["old","new"],"default":"old"},"c_func_iproto_multireturn":{"type":"string","enum":["old","new"],"default":"new"},"box_consider_system_spaces_synchronous":{"type":"string","enum":["old","new"],"default":"old"},"box_error_serialize_verbose":{"type":"string","enum":["old","new"],"default":"old"},"box_tuple_extension":{"type":"string","enum":["old","new"],"default":"new"},"yaml_pretty_multiline":{"type":"string","enum":["old","new"],"default":"new"},"box_info_cluster_meaning":{"type":"string","enum":["old","new"],"default":"new"},"fiber_slice_default":{"type":"string","enum":["old","new"],"default":"new"}}},"roles":{"type":"array","items":{"type":"string"}},"credentials":{"type":"object","additionalProperties":false,"properties":{"roles":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"privileges":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"lua_eval":{"type":"boolean"},"spaces":{"type":"array","items":{"type":"string"}},"sql":{"type":"array","items":{"type":"string","enum":["all"]}},"lua_call":{"type":"array","items":{"type":"string"}},"universe":{"type":"boolean"},"functions":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string","enum":["read","write","execute","create","alter","drop","usage","session"]},"uniqueItems":true},"sequences":{"type":"array","items":{"type":"string"}}}}},"roles":{"type":"array","items":{"type":"string"}}}}},"users":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"roles":{"type":"array","items":{"type":"string"}},"privileges":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"lua_eval":{"type":"boolean"},"spaces":{"type":"array","items":{"type":"string"}},"sql":{"type":"array","items":{"type":"string","enum":["all"]}},"lua_call":{"type":"array","items":{"type":"string"}},"universe":{"type":"boolean"},"functions":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string","enum":["read","write","execute","create","alter","drop","usage","session"]},"uniqueItems":true},"sequences":{"type":"array","items":{"type":"string"}}}}}}}}}},"sql":{"type":"object","additionalProperties":false,"properties":{"cache_size":{"type":"integer","default":5242880}}},"iproto":{"type":"object","additionalProperties":false,"properties":{"readahead":{"type":"integer","default":16320},"net_msg_max":{"type":"integer","default":768},"listen":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"uri":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_key_file":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_password":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}}}}},"threads":{"type":"integer","default":1},"advertise":{"type":"object","additionalProperties":false,"properties":{"peer":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_key_file":{"type":"string"},"ssl_password":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}},"client":{"type":"string","default":null},"sharding":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_key_file":{"type":"string"},"ssl_password":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}}}}}},"sharding":{"type":"object","additionalProperties":false,"properties":{"rebalancer_max_receiving":{"type":"integer","default":100},"weight":{"type":"number","default":1},"shard_index":{"type":"string","default":"bucket_id"},"sync_timeout":{"type":"number","default":1},"discovery_mode":{"type":"string","enum":["on","off","once"],"default":"on"},"sched_ref_quota":{"type":"number","default":300},"lock":{"type":"boolean"},"zone":{"type":"integer"},"rebalancer_mode":{"type":"string","enum":["manual","auto","off"],"default":"auto"},"failover_ping_timeout":{"type":"number","default":5},"rebalancer_max_sending":{"type":"integer","default":1},"bucket_count":{"type":"integer","default":3000},"rebalancer_disbalance_threshold":{"type":"number","default":1},"connection_outdate_delay":{"type":"number"},"roles":{"type":"array","items":{"type":"string","enum":["router","storage","rebalancer"]},"uniqueItems":true},"sched_move_quota":{"type":"number","default":1}}},"snapshot":{"type":"object","additionalProperties":false,"properties":{"snap_io_rate_limit":{"type":"number","default":null},"by":{"type":"object","additionalProperties":false,"properties":{"wal_size":{"type":"integer","default":1000000000000000000},"interval":{"type":"number","default":3600}}},"count":{"type":"integer","default":2},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"}}},"vinyl":{"type":"object","additionalProperties":false,"properties":{"page_size":{"type":"integer","default":8192},"run_count_per_level":{"type":"integer","default":2},"read_threads":{"type":"integer","default":1},"write_threads":{"type":"integer","default":4},"timeout":{"type":"number","default":60},"cache":{"type":"integer","default":134217728},"run_size_ratio":{"type":"number","default":3.5},"max_tuple_size":{"type":"integer","default":1048576},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"},"bloom_fpr":{"type":"number","default":0.05},"defer_deletes":{"type":"boolean","default":false},"memory":{"type":"integer","default":134217728},"range_size":{"type":"integer","default":null}}},"process":{"type":"object","additionalProperties":false,"properties":{"pid_file":{"type":"string","default":"var/run/{{ instance_name }}/tarantool.pid"},"work_dir":{"type":"string","default":null},"coredump":{"type":"boolean","default":false},"username":{"type":"string","default":null},"background":{"type":"boolean","default":false},"title":{"type":"string","default":"tarantool - {{ instance_name }}"},"strip_core":{"type":"boolean","default":true}}},"audit_log":{"type":"object","additionalProperties":false,"properties":{"format":{"type":"string","enum":["plain","json","csv"],"default":"json"},"syslog":{"type":"object","additionalProperties":false,"properties":{"identity":{"type":"string","default":"tarantool"},"server":{"type":"string","default":null},"facility":{"type":"string","default":"local7"}}},"file":{"type":"string","default":"var/log/{{ instance_name }}/audit.log"},"pipe":{"type":"string","default":null},"filter":{"type":"array","items":{"type":"string","enum":["audit_enable","custom","auth_ok","auth_fail","disconnect","user_create","user_drop","role_create","role_drop","user_enable","user_disable","user_grant_rights","user_revoke_rights","role_grant_rights","role_revoke_rights","password_change","access_denied","eval","call","space_select","space_create","space_alter","space_drop","space_insert","space_replace","space_delete","none","all","audit","auth","priv","ddl","dml","data_operations","compatibility"]},"uniqueItems":true},"spaces":{"type":"array","items":{"type":"string"},"default":null},"extract_key":{"type":"boolean","default":false},"to":{"type":"string","enum":["devnull","file","pipe","syslog"],"default":"devnull"},"nonblock":{"type":"boolean","default":false}}},"database":{"type":"object","additionalProperties":false,"properties":{"use_mvcc_engine":{"type":"boolean","default":false},"instance_uuid":{"type":"string","default":null},"txn_timeout":{"type":"number","default":3153600000},"txn_isolation":{"type":"string","enum":["read-committed","read-confirmed","best-effort"],"default":"best-effort"},"replicaset_uuid":{"type":"string","default":null},"mode":{"type":"string","enum":["ro","rw"],"default":null},"hot_standby":{"type":"boolean","default":false}}},"labels":{"type":"object","additionalProperties":{"type":"string"}},"flightrec":{"type":"object","additionalProperties":false,"properties":{"logs_size":{"type":"integer","default":10485760},"logs_max_msg_size":{"type":"integer","default":4096},"requests_size":{"type":"integer","default":10485760},"logs_log_level":{"type":"integer","enum":[0,1,2,3,4,5,6,7],"default":6},"requests_max_req_size":{"type":"integer","default":16384},"metrics_period":{"type":"number","default":180},"enabled":{"type":"boolean","default":false},"requests_max_res_size":{"type":"integer","default":16384},"metrics_interval":{"type":"number","default":1}}},"security":{"type":"object","additionalProperties":false,"properties":{"password_enforce_specialchars":{"type":"boolean","default":false},"secure_erasing":{"type":"boolean","default":false},"password_min_length":{"type":"integer","default":0},"password_history_length":{"type":"integer","default":0},"password_lifetime_days":{"type":"integer","default":0},"auth_type":{"type":"string","enum":["chap-sha1","pap-sha256"],"default":"chap-sha1"},"password_enforce_digits":{"type":"boolean","default":false},"password_enforce_lowercase":{"type":"boolean","default":false},"auth_retries":{"type":"integer","default":0},"disable_guest":{"type":"boolean","default":false},"auth_delay":{"type":"number","default":0},"password_enforce_uppercase":{"type":"boolean","default":false}}},"metrics":{"type":"object","additionalProperties":false,"properties":{"labels":{"type":"object","additionalProperties":{"type":"string"}},"include":{"type":"array","items":{"type":"string","enum":["all","network","operations","system","replicas","info","slab","runtime","memory","spaces","fibers","cpu","vinyl","memtx","luajit","clock","event_loop"]},"uniqueItems":true},"exclude":{"type":"array","items":{"type":"string","enum":["all","network","operations","system","replicas","info","slab","runtime","memory","spaces","fibers","cpu","vinyl","memtx","luajit","clock","event_loop"]},"uniqueItems":true}}},"memtx":{"type":"object","additionalProperties":false,"properties":{"sort_threads":{"type":"integer","default":null},"min_tuple_size":{"type":"integer","default":16},"slab_alloc_factor":{"type":"number","default":1.05},"allocator":{"type":"string","enum":["small","system"],"default":"small"},"max_tuple_size":{"type":"integer","default":1048576},"memory":{"type":"integer","default":268435456},"slab_alloc_granularity":{"type":"integer","default":8}}},"config":{"type":"object","additionalProperties":false,"properties":{"context":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string"},"from":{"type":"string","enum":["env","file"]},"rstrip":{"type":"boolean"},"env":{"type":"string"}}}},"etcd":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"watchers":{"type":"object","additionalProperties":false,"properties":{"reconnect_timeout":{"type":"number"},"reconnect_max_attempts":{"type":"integer"}}},"ssl":{"type":"object","additionalProperties":false,"properties":{"verify_peer":{"type":"boolean"},"ca_file":{"type":"string"},"ssl_key":{"type":"string"},"verify_host":{"type":"boolean"},"ssl_cert":{"type":"string"},"ca_path":{"type":"string"}}},"endpoints":{"type":"array","items":{"type":"string"}},"username":{"type":"string"},"prefix":{"type":"string"},"http":{"type":"object","additionalProperties":false,"properties":{"request":{"type":"object","additionalProperties":false,"properties":{"timeout":{"type":"number"},"unix_socket":{"type":"string"}}}}}}},"reload":{"type":"string","enum":["auto","manual"],"default":"auto"},"storage":{"type":"object","additionalProperties":false,"properties":{"endpoints":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_key_file":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_password":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}}},"reconnect_after":{"type":"number","default":3},"prefix":{"type":"string"},"timeout":{"type":"number","default":3}}}}}}}},"leader":{"type":"string"},"flightrec":{"type":"object","additionalProperties":false,"properties":{"logs_size":{"type":"integer","default":10485760},"logs_max_msg_size":{"type":"integer","default":4096},"requests_size":{"type":"integer","default":10485760},"logs_log_level":{"type":"integer","enum":[0,1,2,3,4,5,6,7],"default":6},"requests_max_req_size":{"type":"integer","default":16384},"metrics_period":{"type":"number","default":180},"enabled":{"type":"boolean","default":false},"requests_max_res_size":{"type":"integer","default":16384},"metrics_interval":{"type":"number","default":1}}},"compat":{"type":"object","additionalProperties":false,"properties":{"sql_priv":{"type":"string","enum":["old","new"],"default":"new"},"binary_data_decoding":{"type":"string","enum":["old","new"],"default":"new"},"sql_seq_scan_default":{"type":"string","enum":["old","new"],"default":"new"},"box_cfg_replication_sync_timeout":{"type":"string","enum":["old","new"],"default":"new"},"box_tuple_new_vararg":{"type":"string","enum":["old","new"],"default":"new"},"console_session_scope_vars":{"type":"string","enum":["old","new"],"default":"old"},"json_escape_forward_slash":{"type":"string","enum":["old","new"],"default":"new"},"box_space_max":{"type":"string","enum":["old","new"],"default":"new"},"box_space_execute_priv":{"type":"string","enum":["old","new"],"default":"new"},"fiber_channel_close_mode":{"type":"string","enum":["old","new"],"default":"new"},"box_error_unpack_type_and_code":{"type":"string","enum":["old","new"],"default":"old"},"box_session_push_deprecation":{"type":"string","enum":["old","new"],"default":"old"},"c_func_iproto_multireturn":{"type":"string","enum":["old","new"],"default":"new"},"box_consider_system_spaces_synchronous":{"type":"string","enum":["old","new"],"default":"old"},"box_error_serialize_verbose":{"type":"string","enum":["old","new"],"default":"old"},"box_tuple_extension":{"type":"string","enum":["old","new"],"default":"new"},"yaml_pretty_multiline":{"type":"string","enum":["old","new"],"default":"new"},"box_info_cluster_meaning":{"type":"string","enum":["old","new"],"default":"new"},"fiber_slice_default":{"type":"string","enum":["old","new"],"default":"new"}}},"config":{"type":"object","additionalProperties":false,"properties":{"context":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string"},"from":{"type":"string","enum":["env","file"]},"rstrip":{"type":"boolean"},"env":{"type":"string"}}}},"etcd":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"watchers":{"type":"object","additionalProperties":false,"properties":{"reconnect_timeout":{"type":"number"},"reconnect_max_attempts":{"type":"integer"}}},"ssl":{"type":"object","additionalProperties":false,"properties":{"verify_peer":{"type":"boolean"},"ca_file":{"type":"string"},"ssl_key":{"type":"string"},"verify_host":{"type":"boolean"},"ssl_cert":{"type":"string"},"ca_path":{"type":"string"}}},"endpoints":{"type":"array","items":{"type":"string"}},"username":{"type":"string"},"prefix":{"type":"string"},"http":{"type":"object","additionalProperties":false,"properties":{"request":{"type":"object","additionalProperties":false,"properties":{"timeout":{"type":"number"},"unix_socket":{"type":"string"}}}}}}},"reload":{"type":"string","enum":["auto","manual"],"default":"auto"},"storage":{"type":"object","additionalProperties":false,"properties":{"endpoints":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_key_file":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_password":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}}},"reconnect_after":{"type":"number","default":3},"prefix":{"type":"string"},"timeout":{"type":"number","default":3}}}}}}}},"memtx":{"type":"object","additionalProperties":false,"properties":{"sort_threads":{"type":"integer","default":null},"min_tuple_size":{"type":"integer","default":16},"slab_alloc_factor":{"type":"number","default":1.05},"allocator":{"type":"string","enum":["small","system"],"default":"small"},"max_tuple_size":{"type":"integer","default":1048576},"memory":{"type":"integer","default":268435456},"slab_alloc_granularity":{"type":"integer","default":8}}},"app":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string"},"module":{"type":"string"},"cfg":{"type":"object","additionalProperties":{}}}},"roles_cfg":{"type":"object","additionalProperties":{}},"replication":{"type":"object","additionalProperties":false,"properties":{"connect_timeout":{"type":"number","default":30},"sync_lag":{"type":"number","default":10},"failover":{"type":"string","enum":["off","manual","election","supervised"],"default":"off"},"skip_conflict":{"type":"boolean","default":false},"sync_timeout":{"type":"number","default":null},"timeout":{"type":"number","default":1},"synchro_quorum":{"type":["string","number"],"default":"N / 2 + 1"},"election_mode":{"type":"string","enum":["off","voter","manual","candidate"],"default":null},"bootstrap_strategy":{"type":"string","enum":["auto","config","supervised","legacy"],"default":"auto"},"election_timeout":{"type":"number","default":5},"synchro_timeout":{"type":"number","default":5},"election_fencing_mode":{"type":"string","enum":["off","soft","strict"],"default":"soft"},"peers":{"type":"array","items":{"type":"string"},"default":null},"anon":{"type":"boolean","default":false},"threads":{"type":"integer","default":1}}},"metrics":{"type":"object","additionalProperties":false,"properties":{"labels":{"type":"object","additionalProperties":{"type":"string"}},"include":{"type":"array","items":{"type":"string","enum":["all","network","operations","system","replicas","info","slab","runtime","memory","spaces","fibers","cpu","vinyl","memtx","luajit","clock","event_loop"]},"uniqueItems":true},"exclude":{"type":"array","items":{"type":"string","enum":["all","network","operations","system","replicas","info","slab","runtime","memory","spaces","fibers","cpu","vinyl","memtx","luajit","clock","event_loop"]},"uniqueItems":true}}},"security":{"type":"object","additionalProperties":false,"properties":{"password_enforce_specialchars":{"type":"boolean","default":false},"secure_erasing":{"type":"boolean","default":false},"password_min_length":{"type":"integer","default":0},"password_history_length":{"type":"integer","default":0},"password_lifetime_days":{"type":"integer","default":0},"auth_type":{"type":"string","enum":["chap-sha1","pap-sha256"],"default":"chap-sha1"},"password_enforce_digits":{"type":"boolean","default":false},"password_enforce_lowercase":{"type":"boolean","default":false},"auth_retries":{"type":"integer","default":0},"disable_guest":{"type":"boolean","default":false},"auth_delay":{"type":"number","default":0},"password_enforce_uppercase":{"type":"boolean","default":false}}},"credentials":{"type":"object","additionalProperties":false,"properties":{"roles":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"privileges":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"lua_eval":{"type":"boolean"},"spaces":{"type":"array","items":{"type":"string"}},"sql":{"type":"array","items":{"type":"string","enum":["all"]}},"lua_call":{"type":"array","items":{"type":"string"}},"universe":{"type":"boolean"},"functions":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string","enum":["read","write","execute","create","alter","drop","usage","session"]},"uniqueItems":true},"sequences":{"type":"array","items":{"type":"string"}}}}},"roles":{"type":"array","items":{"type":"string"}}}}},"users":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"roles":{"type":"array","items":{"type":"string"}},"privileges":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"lua_eval":{"type":"boolean"},"spaces":{"type":"array","items":{"type":"string"}},"sql":{"type":"array","items":{"type":"string","enum":["all"]}},"lua_call":{"type":"array","items":{"type":"string"}},"universe":{"type":"boolean"},"functions":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string","enum":["read","write","execute","create","alter","drop","usage","session"]},"uniqueItems":true},"sequences":{"type":"array","items":{"type":"string"}}}}}}}}}},"sql":{"type":"object","additionalProperties":false,"properties":{"cache_size":{"type":"integer","default":5242880}}},"flightrec":{"type":"object","additionalProperties":false,"properties":{"logs_size":{"type":"integer","default":10485760},"logs_max_msg_size":{"type":"integer","default":4096},"requests_size":{"type":"integer","default":10485760},"logs_log_level":{"type":"integer","enum":[0,1,2,3,4,5,6,7],"default":6},"requests_max_req_size":{"type":"integer","default":16384},"metrics_period":{"type":"number","default":180},"enabled":{"type":"boolean","default":false},"requests_max_res_size":{"type":"integer","default":16384},"metrics_interval":{"type":"number","default":1}}},"sharding":{"type":"object","additionalProperties":false,"properties":{"rebalancer_max_receiving":{"type":"integer","default":100},"weight":{"type":"number","default":1},"shard_index":{"type":"string","default":"bucket_id"},"sync_timeout":{"type":"number","default":1},"discovery_mode":{"type":"string","enum":["on","off","once"],"default":"on"},"sched_ref_quota":{"type":"number","default":300},"lock":{"type":"boolean"},"zone":{"type":"integer"},"rebalancer_mode":{"type":"string","enum":["manual","auto","off"],"default":"auto"},"failover_ping_timeout":{"type":"number","default":5},"rebalancer_max_sending":{"type":"integer","default":1},"bucket_count":{"type":"integer","default":3000},"rebalancer_disbalance_threshold":{"type":"number","default":1},"connection_outdate_delay":{"type":"number"},"roles":{"type":"array","items":{"type":"string","enum":["router","storage","rebalancer"]},"uniqueItems":true},"sched_move_quota":{"type":"number","default":1}}},"snapshot":{"type":"object","additionalProperties":false,"properties":{"snap_io_rate_limit":{"type":"number","default":null},"by":{"type":"object","additionalProperties":false,"properties":{"wal_size":{"type":"integer","default":1000000000000000000},"interval":{"type":"number","default":3600}}},"count":{"type":"integer","default":2},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"}}},"vinyl":{"type":"object","additionalProperties":false,"properties":{"page_size":{"type":"integer","default":8192},"run_count_per_level":{"type":"integer","default":2},"read_threads":{"type":"integer","default":1},"write_threads":{"type":"integer","default":4},"timeout":{"type":"number","default":60},"cache":{"type":"integer","default":134217728},"run_size_ratio":{"type":"number","default":3.5},"max_tuple_size":{"type":"integer","default":1048576},"dir":{"type":"string","default":"var/lib/{{ instance_name }}"},"bloom_fpr":{"type":"number","default":0.05},"defer_deletes":{"type":"boolean","default":false},"memory":{"type":"integer","default":134217728},"range_size":{"type":"integer","default":null}}},"process":{"type":"object","additionalProperties":false,"properties":{"pid_file":{"type":"string","default":"var/run/{{ instance_name }}/tarantool.pid"},"work_dir":{"type":"string","default":null},"coredump":{"type":"boolean","default":false},"username":{"type":"string","default":null},"background":{"type":"boolean","default":false},"title":{"type":"string","default":"tarantool - {{ instance_name }}"},"strip_core":{"type":"boolean","default":true}}},"audit_log":{"type":"object","additionalProperties":false,"properties":{"format":{"type":"string","enum":["plain","json","csv"],"default":"json"},"syslog":{"type":"object","additionalProperties":false,"properties":{"identity":{"type":"string","default":"tarantool"},"server":{"type":"string","default":null},"facility":{"type":"string","default":"local7"}}},"file":{"type":"string","default":"var/log/{{ instance_name }}/audit.log"},"pipe":{"type":"string","default":null},"filter":{"type":"array","items":{"type":"string","enum":["audit_enable","custom","auth_ok","auth_fail","disconnect","user_create","user_drop","role_create","role_drop","user_enable","user_disable","user_grant_rights","user_revoke_rights","role_grant_rights","role_revoke_rights","password_change","access_denied","eval","call","space_select","space_create","space_alter","space_drop","space_insert","space_replace","space_delete","none","all","audit","auth","priv","ddl","dml","data_operations","compatibility"]},"uniqueItems":true},"spaces":{"type":"array","items":{"type":"string"},"default":null},"extract_key":{"type":"boolean","default":false},"to":{"type":"string","enum":["devnull","file","pipe","syslog"],"default":"devnull"},"nonblock":{"type":"boolean","default":false}}},"database":{"type":"object","additionalProperties":false,"properties":{"use_mvcc_engine":{"type":"boolean","default":false},"instance_uuid":{"type":"string","default":null},"txn_timeout":{"type":"number","default":3153600000},"txn_isolation":{"type":"string","enum":["read-committed","read-confirmed","best-effort"],"default":"best-effort"},"replicaset_uuid":{"type":"string","default":null},"mode":{"type":"string","enum":["ro","rw"],"default":null},"hot_standby":{"type":"boolean","default":false}}},"feedback":{"type":"object","additionalProperties":false,"properties":{"host":{"type":"string","default":"https://feedback.tarantool.io"},"metrics_collect_interval":{"type":"number","default":60},"metrics_limit":{"type":"integer","default":1048576},"send_metrics":{"type":"boolean","default":true},"crashinfo":{"type":"boolean","default":true},"enabled":{"type":"boolean","default":true},"interval":{"type":"number","default":3600}}},"labels":{"type":"object","additionalProperties":{"type":"string"}},"console":{"type":"object","additionalProperties":false,"properties":{"socket":{"type":"string","default":"var/run/{{ instance_name }}/tarantool.control"},"enabled":{"type":"boolean","default":true}}},"compat":{"type":"object","additionalProperties":false,"properties":{"sql_priv":{"type":"string","enum":["old","new"],"default":"new"},"binary_data_decoding":{"type":"string","enum":["old","new"],"default":"new"},"sql_seq_scan_default":{"type":"string","enum":["old","new"],"default":"new"},"box_cfg_replication_sync_timeout":{"type":"string","enum":["old","new"],"default":"new"},"box_tuple_new_vararg":{"type":"string","enum":["old","new"],"default":"new"},"console_session_scope_vars":{"type":"string","enum":["old","new"],"default":"old"},"json_escape_forward_slash":{"type":"string","enum":["old","new"],"default":"new"},"box_space_max":{"type":"string","enum":["old","new"],"default":"new"},"box_space_execute_priv":{"type":"string","enum":["old","new"],"default":"new"},"fiber_channel_close_mode":{"type":"string","enum":["old","new"],"default":"new"},"box_error_unpack_type_and_code":{"type":"string","enum":["old","new"],"default":"old"},"box_session_push_deprecation":{"type":"string","enum":["old","new"],"default":"old"},"c_func_iproto_multireturn":{"type":"string","enum":["old","new"],"default":"new"},"box_consider_system_spaces_synchronous":{"type":"string","enum":["old","new"],"default":"old"},"box_error_serialize_verbose":{"type":"string","enum":["old","new"],"default":"old"},"box_tuple_extension":{"type":"string","enum":["old","new"],"default":"new"},"yaml_pretty_multiline":{"type":"string","enum":["old","new"],"default":"new"},"box_info_cluster_meaning":{"type":"string","enum":["old","new"],"default":"new"},"fiber_slice_default":{"type":"string","enum":["old","new"],"default":"new"}}},"roles":{"type":"array","items":{"type":"string"}},"config":{"type":"object","additionalProperties":false,"properties":{"context":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string"},"from":{"type":"string","enum":["env","file"]},"rstrip":{"type":"boolean"},"env":{"type":"string"}}}},"etcd":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"watchers":{"type":"object","additionalProperties":false,"properties":{"reconnect_timeout":{"type":"number"},"reconnect_max_attempts":{"type":"integer"}}},"ssl":{"type":"object","additionalProperties":false,"properties":{"verify_peer":{"type":"boolean"},"ca_file":{"type":"string"},"ssl_key":{"type":"string"},"verify_host":{"type":"boolean"},"ssl_cert":{"type":"string"},"ca_path":{"type":"string"}}},"endpoints":{"type":"array","items":{"type":"string"}},"username":{"type":"string"},"prefix":{"type":"string"},"http":{"type":"object","additionalProperties":false,"properties":{"request":{"type":"object","additionalProperties":false,"properties":{"timeout":{"type":"number"},"unix_socket":{"type":"string"}}}}}}},"reload":{"type":"string","enum":["auto","manual"],"default":"auto"},"storage":{"type":"object","additionalProperties":false,"properties":{"endpoints":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_key_file":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_password":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}}},"reconnect_after":{"type":"number","default":3},"prefix":{"type":"string"},"timeout":{"type":"number","default":3}}}}}}}},"memtx":{"type":"object","additionalProperties":false,"properties":{"sort_threads":{"type":"integer","default":null},"min_tuple_size":{"type":"integer","default":16},"slab_alloc_factor":{"type":"number","default":1.05},"allocator":{"type":"string","enum":["small","system"],"default":"small"},"max_tuple_size":{"type":"integer","default":1048576},"memory":{"type":"integer","default":268435456},"slab_alloc_granularity":{"type":"integer","default":8}}},"config":{"type":"object","additionalProperties":false,"properties":{"context":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string"},"from":{"type":"string","enum":["env","file"]},"rstrip":{"type":"boolean"},"env":{"type":"string"}}}},"etcd":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"watchers":{"type":"object","additionalProperties":false,"properties":{"reconnect_timeout":{"type":"number"},"reconnect_max_attempts":{"type":"integer"}}},"ssl":{"type":"object","additionalProperties":false,"properties":{"verify_peer":{"type":"boolean"},"ca_file":{"type":"string"},"ssl_key":{"type":"string"},"verify_host":{"type":"boolean"},"ssl_cert":{"type":"string"},"ca_path":{"type":"string"}}},"endpoints":{"type":"array","items":{"type":"string"}},"username":{"type":"string"},"prefix":{"type":"string"},"http":{"type":"object","additionalProperties":false,"properties":{"request":{"type":"object","additionalProperties":false,"properties":{"timeout":{"type":"number"},"unix_socket":{"type":"string"}}}}}}},"reload":{"type":"string","enum":["auto","manual"],"default":"auto"},"storage":{"type":"object","additionalProperties":false,"properties":{"endpoints":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"password":{"type":"string"},"params":{"type":"object","additionalProperties":false,"properties":{"ssl_password_file":{"type":"string"},"ssl_key_file":{"type":"string"},"transport":{"type":"string","enum":["plain","ssl"]},"ssl_password":{"type":"string"},"ssl_cert_file":{"type":"string"},"ssl_ciphers":{"type":"string"},"ssl_ca_file":{"type":"string"}}},"uri":{"type":"string"},"login":{"type":"string"}}}},"reconnect_after":{"type":"number","default":3},"prefix":{"type":"string"},"timeout":{"type":"number","default":3}}}}}}} |
Author
ochaton
commented
Sep 6, 2024
•
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment