pgsql: Fix errno check based on EINTR in pg_flush_data()

Started by Michael Paquier3 months ago1 messagescomitters
Jump to latest
#1Michael Paquier
michael@paquier.xyz

Fix errno check based on EINTR in pg_flush_data()

Upon a failure of sync_file_range(), EINTR was checked based on the
returned result of the routine rather than its errno. sync_file_range()
returns -1 on failure, making the check a no-op, invalidating the retry
attempt in this case.

Oversight in 0d369ac65004.

Author: DaeMyung Kang <charsyam@gmail.com>
Discussion: /messages/by-id/20260429151811.1810874-1-charsyam@gmail.com
Backpatch-through: 16

Branch
------
REL_18_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/6cb307251c5c6261286c1566496920976640108e

Modified Files
--------------
src/backend/storage/file/fd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)