]> granicus.if.org Git - postgresql/commit
When performing a base backup, check for read errors.
authorRobert Haas <rhaas@postgresql.org>
Fri, 6 Sep 2019 12:22:32 +0000 (08:22 -0400)
committerRobert Haas <rhaas@postgresql.org>
Fri, 6 Sep 2019 13:05:12 +0000 (09:05 -0400)
commitf697c6396d73c1e6d550afed84a6bd8362d9a0d4
tree359d844d8b238e02c5e043a52f02c50bbeb63cb9
parent62724bd952a2a2a7e114364f5af655f11e21289f
When performing a base backup, check for read errors.

The old code didn't differentiate between a read error and a
concurrent truncation. fread reports both of these by returning 0;
you have to use feof() or ferror() to distinguish between them,
which this code did not do.

It might be a better idea to use read() rather than fread() here,
so that we can display a less-generic error message, but I'm not
sure that would qualify as a back-patchable bug fix, so just do
this much for now.

Jeevan Chalke, reviewed by Jeevan Ladhe and by me.

Discussion: http://postgr.es/m/CA+TgmobG4ywMzL5oQq2a8YKp8x2p3p1LOMMcGqpS7aekT9+ETA@mail.gmail.com
src/backend/replication/basebackup.c