debug_discard_caches
是一个 配置参数,指示 PostgreSQL 在第一时间尽可能地使每个 系统目录 缓存条目失效。
debug_discard_caches
在 PostgreSQL 14 中添加。
默认值
debug_discard_caches
的默认值为:0
。有关例外情况,请参阅“用法”部分。
请注意,只有在使用 --enable-cassert
选项编译 PostgreSQL,或手动设置了 DISCARD_CACHES_ENABLED
时,才能启用
debug_discard_caches
。否则无法更改设置。
用法
debug_discard_caches
的引入是为了避免在构建 PostgreSQL 时需要设置 CLOBBER_CACHE_ALWAYS
,并使其能够动态启用/禁用设置。
为了向后兼容,如果定义了 CLOBBER_CACHE_ALWAYS
,则 debug_discard_caches
将设置为 1
;如果定义了 CLOBBER_CACHE_RECURSIVE
,则设置为 3
。
从 PostgreSQL 14 开始,可以向 initdb
提供 --clobber-cache
选项,以引导 debug_discard_caches
将设置为 1
的后端。
按 PostgreSQL 版本分列的详细信息
debug_discard_caches (PostgreSQL 17)
设置 | 0 |
单位 | |
类别 | 开发者选项 |
简短描述 | 出于调试目的,积极刷新系统缓存。 |
额外描述 | |
上下文 | 超级用户 |
变量类型 | 整数 |
来源 | 默认值 |
最小值 | 0 |
最大值 | 5 |
枚举值 | |
启动值 | 0 |
重置值 | 0 |
源文件 | |
源代码行号 | |
待重启 | 否 |
debug_discard_caches (PostgreSQL 16)
设置 | 0 |
单位 | |
类别 | 开发者选项 |
简短描述 | 出于调试目的,积极刷新系统缓存。 |
额外描述 | |
上下文 | 超级用户 |
变量类型 | 整数 |
来源 | 默认值 |
最小值 | 0 |
最大值 | 5 |
枚举值 | |
启动值 | 0 |
重置值 | 0 |
源文件 | |
源代码行号 | |
待重启 | 否 |
debug_discard_caches (PostgreSQL 15)
设置 | 0 |
单位 | |
类别 | 开发者选项 |
简短描述 | 出于调试目的,积极刷新系统缓存。 |
额外描述 | |
上下文 | 超级用户 |
变量类型 | 整数 |
来源 | 默认值 |
最小值 | 0 |
最大值 | 5 |
枚举值 | |
启动值 | 0 |
重置值 | 0 |
源文件 | |
源代码行号 | |
待重启 | 否 |
debug_discard_caches (PostgreSQL 14)
设置 | 0 |
单位 | |
类别 | 开发者选项 |
简短描述 | 出于调试目的,积极刷新系统缓存。 |
额外描述 | |
上下文 | 超级用户 |
变量类型 | 整数 |
来源 | 默认值 |
最小值 | 0 |
最大值 | 5 |
枚举值 | |
启动值 | 0 |
重置值 | 0 |
源文件 | |
源代码行号 | |
待重启 | 否 |
更改历史记录
参考
- PostgreSQL 文档: debug_discard_caches