我正在用RDS checkpoint_completion_target测试PostgreSQL,并看到检查点所用的总时间为28.5秒。但是,我配置了
checkpoint_completion_target = 0.9
checkpoint_timeout = 300根据这一点,检查点是否应该扩展到300*0.9,即270秒?PostgreSQL版本11.10
日志:
2021-03-19 16:06:47 UTC::@:[25023]:LOG: checkpoint starting: time
2021-03-19 16:07:16 UTC::@:[25023]:LOG: checkpoint complete: wrote 283 buffers (0.2%); 0 WAL file(s) added, 0 removed, 1 recycled; write=28.500 s, sync=0.006 s, total=28.533 s; sync files=56, longest=0.006 s, average=0.000 s; distance=64990 kB, estimate=68721 kB发布于 2021-03-20 01:52:49
Check指针通过在0.1秒内小睡来实现其节流。而且没有规定每一个缓冲器需要写一次以上的午睡。因此,如果没有什么工作要做,它将提前完成,尽管设置了checkpoint_completion_target。
https://stackoverflow.com/questions/66714418
复制相似问题