Reorder XLogNeedsFlush() checks to be more consistent
authorMichael Paquier <michael@paquier.xyz>
Tue, 30 Sep 2025 00:38:32 +0000 (09:38 +0900)
committerMichael Paquier <michael@paquier.xyz>
Tue, 30 Sep 2025 00:38:32 +0000 (09:38 +0900)
commitbb68cde4136b02a7e51e8876891cd0a61c5726ca
tree889dfdf7d6db09c3a952ed1270a27983f77db1ff
parent3cc689f833b1c9c5b52f1fe07c0e0fd817e23c8b
Reorder XLogNeedsFlush() checks to be more consistent

During recovery, XLogNeedsFlush() checks the minimum recovery LSN point
instead of the flush LSN point.  The same condition checks are used when
updating the minimum recovery point in UpdateMinRecoveryPoint(), but are
written in reverse order.

This commit makes the order of the checks consistent between
XLogNeedsFlush() and UpdateMinRecoveryPoint(), improving the code
clarity.  Note that the second check (as ordered by this commit) relies
on InRecovery, which is true only in the startup process.  So this makes
XLogNeedsFlush() cheaper in the startup process with the first check
acting as a shortcut while doing crash recovery, where
LocalMinRecoveryPoint is an invalid LSN.

Author: Melanie Plageman <melanieplageman@gmail.com>
Reviewed-by: Dilip Kumar <dilipbalaut@gmail.com>
Discussion: https://postgr.es/m/aMIHNRTP6Wj6vw1s%40paquier.xyz
src/backend/access/transam/xlog.c