Re: Fix handling of copy_file_range() return value - Mailing list pgsql-hackers

From Nazir Bilal Yavuz
Subject Re: Fix handling of copy_file_range() return value
Date
Msg-id CAN55FZ2wE7DgnqDVzdc8ZhMk2m_XYQNniufD5xw1sQyMtOvR4A@mail.gmail.com
Whole thread
In response to Fix handling of copy_file_range() return value  (Peter Eisentraut <peter@eisentraut.org>)
List pgsql-hackers
Hi,

On Mon, 22 Jun 2026 at 10:20, Peter Eisentraut <peter@eisentraut.org> wrote:
>
> While checking return/error handling of file system calls, I found that
> the copy_file_range() call in pg_combinebackup has a potential problem.
> If copy_file_range() returns 0, which is a documented condition, then
> the loop never makes progress and could spin forever.
>
> The other uses of copy_file_range() in the tree are surrounded by
> different logic and don't appear to have this problem.
>
> My suggested fix is to make a return value of 0 an error.  It most
> likely indicates that the source file has an unexpected size.

You are right, that is a problem only with this use of
copy_file_range(), and your patch fixes it; LGTM.

-- 
Regards,
Nazir Bilal Yavuz
Microsoft



pgsql-hackers by date:

Previous
From: Anton Voloshin
Date:
Subject: Re: Reorganize GUC structs
Next
From: shveta malik
Date:
Subject: Re: Proposal: Conflict log history table for Logical Replication