这些设置可在 system.settings 中查看,并由 源代码 自动生成。
distributed_ddl_entry_format_version
类型
UInt64
默认值
5
分布式 DDL (ON CLUSTER) 查询的兼容版本
Cloud 默认值:6。
distributed_ddl_output_mode
类型
DistributedDDLOutputMode
默认值
throw
设置分布式 DDL 查询结果的格式。
可选值:
throw— 返回结果集,其中包含查询已执行完成的所有 hosts 的查询执行状态。如果查询在某些 hosts 上失败,则会重新抛出第一个异常。如果查询在某些 hosts 上尚未完成,并且已超出 distributed_ddl_task_timeout,则会抛出TIMEOUT_EXCEEDED异常。none— 类似于throw,但分布式 DDL 查询不返回结果集。null_status_on_timeout— 如果查询在相应的 hosts 上尚未完成,则在结果集的某些行中返回NULL作为执行状态,而不是抛出TIMEOUT_EXCEEDED。never_throw— 如果查询在某些 hosts 上失败,则既不抛出TIMEOUT_EXCEEDED,也不重新抛出异常。none_only_active- 类似于none,但不会等待Replicated数据库的非活动副本。注意:在此模式下,无法判断查询是否未在某个副本上执行,而是将在后台执行。null_status_on_timeout_only_active— 类似于null_status_on_timeout,但不会等待Replicated数据库的非活动副本throw_only_active— 类似于throw,但不会等待Replicated数据库的非活动副本
Cloud 默认值:none_only_active。
distributed_ddl_task_timeout
类型
Int64
默认值
180
设置集群中所有主机返回 DDL 查询响应的超时时间。如果某个 DDL 请求尚未在所有主机上执行完成,响应中将包含超时错误,并且该请求将以异步模式执行。负值表示无限。
可能的值:
- 正整数。
- 0 — 异步模式。
- 负整数 — 无限超时。