parallel_leader_participation
一个 GUC 参数,用于确定主进程是否应等待工作进程
parallel_leader_participation 是一个 配置参数,它允许主进程在 Gather 和 Gather Merge 节点下执行查询计划,而不是等待工作进程。
parallel_leader_participation 在 PostgreSQL 11 中被添加。
默认
parallel_leader_participation 的默认值为:on。
用法
将 parallel_leader_participation 设置为 off 会降低工作进程因主进程读取元组速度不够快而被阻塞的可能性,但要求主进程在能够生成第一个元组之前等待工作进程启动。主进程在多大程度上能帮助或阻碍性能取决于计划类型、工作进程数量和查询持续时间。
按 PostgreSQL 版本详细信息
parallel_leader_participation (PostgreSQL 19)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 工作进程 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
parallel_leader_participation (PostgreSQL 18)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 工作进程 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
parallel_leader_participation (PostgreSQL 17)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 异步行为 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
parallel_leader_participation (PostgreSQL 16)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 异步行为 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
parallel_leader_participation (PostgreSQL 15)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 异步行为 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
parallel_leader_participation (PostgreSQL 14)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 异步行为 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
parallel_leader_participation (PostgreSQL 13)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 异步行为 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
parallel_leader_participation (PostgreSQL 12)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 异步行为 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
parallel_leader_participation (PostgreSQL 11)
| 设置 |
开启 |
| 单位 |
|
| 类别 |
资源使用 / 异步行为 |
| 简短描述 |
控制 Gather 和 Gather Merge 是否也运行子计划。 |
| 扩展描述 |
Gather 节点是也运行子计划,还是只收集元组? |
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
开启 |
| 重置值 |
开启 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:parallel_leader_participation
变更历史