synchronize_seqscans

控制是否同步顺序表扫描的 GUC

synchronize_seqscans 是一个 配置参数,用于控制是否同步大型表的顺序扫描,以优化 I/O 使用。

synchronize_seqscansPostgreSQL 8.3 中添加。

默认值

synchronize_seqscans 的默认值为:on

用法

synchronize_seqscans 设置为 off 将恢复 PostgreSQL 8.2 及更早版本中的行为。

按 PostgreSQL 版本分列的详细信息

synchronize_seqscans (PostgreSQL 17)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 16)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 15)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 14)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 13)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 12)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 11)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 10)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 9.6)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 9.5)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  
挂起重启

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 9.4)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 9.3)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 9.2)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 9.1)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 9.0)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 8.4)

设置 开启
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源代码行号  

文档: synchronize_seqscans

synchronize_seqscans (PostgreSQL 8.3)

设置  
单位  
类别 版本和平台兼容性/以前的 PostgreSQL 版本
简短描述 启用同步顺序扫描。
额外描述  
上下文 用户
变量类型 布尔值
来源 默认值
最小值  
最大值  

文档: synchronize_seqscans

更改历史记录

示例

此简单示例显示了 synchronize_seqscans 设置为 on(默认值)和 off 时规划器行为的差异。

postgres=# EXPLAIN ANALYZE SELECT * FROM foo WHERE id > 10000 limit 5;
                                                  QUERY PLAN                                                  
--------------------------------------------------------------------------------------------------------------
 Limit  (cost=0.00..0.25 rows=5 width=4) (actual time=0.136..0.137 rows=5 loops=1)
   ->  Seq Scan on foo  (cost=0.00..185288.50 rows=3761080 width=4) (actual time=0.135..0.136 rows=5 loops=1)
         Filter: (id > 10000)
         Rows Removed by Filter: 2768
 Planning Time: 0.033 ms
 Execution Time: 0.145 ms
(6 rows)

postgres=# SET synchronize_seqscans TO off;
SET

postgres=# EXPLAIN ANALYZE SELECT * FROM foo WHERE id > 10000 limit 5;
                                                  QUERY PLAN                                                  
--------------------------------------------------------------------------------------------------------------
 Limit  (cost=0.00..0.25 rows=5 width=4) (actual time=0.470..0.471 rows=5 loops=1)
   ->  Seq Scan on foo  (cost=0.00..185288.50 rows=3761080 width=4) (actual time=0.469..0.469 rows=5 loops=1)
         Filter: (id > 10000)
         Rows Removed by Filter: 10000
 Planning Time: 0.035 ms
 Execution Time: 0.484 ms
(6 rows)

分类

向后兼容性GUC 配置项

另请参阅

enable_seqscan

反馈

提交任何关于 "synchronize_seqscans" 的评论、建议或更正 此处