Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 检查点\u完成\u目标被忽略_Postgresql - Fatal编程技术网

Postgresql 检查点\u完成\u目标被忽略

Postgresql 检查点\u完成\u目标被忽略,postgresql,Postgresql,我正在测试RDS PostgreSQL中的checkpoint_completion_目标,看到checkpoint花费的总时间为28.5秒。但是,我配置了 checkpoint\u completion\u target=0.9 检查点超时=300 根据这一点,检查点是否应该扩展300*0.9,即270秒? PostgreSQL 11.10版 日志: 2021-03-19 16:06:47 UTC::@:[25023]:日志:检查点开始:时间 2021-03-19 16:07:16 UTC:

我正在测试RDS PostgreSQL中的checkpoint_completion_目标,看到checkpoint花费的总时间为28.5秒。但是,我配置了

checkpoint\u completion\u target=0.9
检查点超时=300
根据这一点,检查点是否应该扩展300*0.9,即270秒? PostgreSQL 11.10版

日志:

2021-03-19 16:06:47 UTC::@:[25023]:日志:检查点开始:时间
2021-03-19 16:07:16 UTC::@:[25023]:日志:检查点完成:写入了283个缓冲区(0.2%);添加0个WAL文件,删除0个,回收1个;写入=28.500秒,同步=0.006秒,总计=28.533秒;同步文件=56,最长=0.006秒,平均=0.000秒;距离=64990 kB,估计值=68721 kB

检查点通过在0.1秒的块中打盹来实现其限制。而且,对于每个需要写入的缓冲区,没有规定要进行一次以上的nap。因此,如果要做的工作很少,那么即使设置了检查点完成目标,它也会提前完成。

谢谢@jjanes。我只是想确认一下,我知道这取决于CPU、内存和I/O等资源的可用性。如果任何资源中存在争用,检查点执行节流以在检查点完成目标上分布到整个进程,如果没有争用,检查点尽可能早地完成该进程。我说得对吗?