Re: Doesn't pgstat_report_wal() handle the argument "force" incorrectly
Ryoga Yoshida <bt23yoshidar@oss.nttdata.com>
From: Ryoga Yoshida <bt23yoshidar@oss.nttdata.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2023-09-25T02:27:27Z
Lists: pgsql-hackers
Attachments
- v1-0002-bug-fix-in-foce-within-pgstat_report_wal.patch (text/x-diff) patch v1-0002
On 2023-09-25 09:56, Michael Paquier wrote: > It seems to me that you are right here. It would make sense to me to > say that force=true is equivalent to nowait=false, as in "I'm OK to > wait on the lockas I want to make sure that the stats are flushed at > this point". Currently force=true means nowait=true, as in "I'm OK to > not have the stats flushed if I cannot take the lock". > > Seeing the three callers of pgstat_report_wal(), the checkpointer > wants to force its way twice, and the WAL writer does not care if they > are not flushed immediately at it loops forever in this path. > > A comment at the top of pgstat_report_wal() would be nice to document > that a bit better, at least. Thank you for the review. Certainly, adding a comments is a good idea. I added a comment. Ryoga Yoshida
Commits
-
Fix behavior of "force" in pgstat_report_wal()
- 802fcb9ed166 15.5 landed
- 280f70221ba5 16.1 landed
- e221c0befb1b 17.0 landed