Fix handling of copy_file_range() return value Treat copy_file_range() return value of zero as an error: it indicates that no bytes could be copied (perhaps the source file is shorter than expected), and the existing retry loop would otherwise spin forever since nwritten would never reach BLCKSZ.
The other uses of copy_file_range() in the tree don't have this problem. Reviewed-by: Nazir Bilal Yavuz <[email protected]> Reviewed-by: Kyotaro Horiguchi <[email protected]> Reviewed-by: Yingying Chen <[email protected]> Discussion: https://www.postgresql.org/message-id/flat/3208cf7a-c7f3-41eb-92f6-33cbeff4df40%40eisentraut.org Branch ------ REL_18_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/d36b728949bf4e37ada1cd23e0f2aaa94f609a70 Modified Files -------------- src/bin/pg_combinebackup/reconstruct.c | 3 +++ 1 file changed, 3 insertions(+)
