1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2024-12-14 10:13:05 +02:00
pgbackrest/lib/pgBackRest/Archive
David Steele 8f6d324b2c Fix issue with multiple async status files causing a hard error.
Multiple status files were being created by asynchronous archiving if a high-level error occurred after one or more WAL segments had already been transferred successfully.  Error files were being written for every file in the queue regardless of whether it had already succeeded.  To fix this, add an option to skip writing error files when an ok file already exists.

There are other situations where both files might exist (various fsync and filesystem error scenarios) so it seems best to retry in the case that multiple status files are found rather than throwing a hard error (which then means that archiving is completely stuck).  In the case of multiple status files, a warning will be logged to alert the user that something unusual is happening and the command will be retried.

Reported by fpa-postgres, Joe Ayers, Douglas J Hunley.
2019-01-26 16:59:54 +02:00
..
Get Rename PGBACKREST/BACKREST constants to PROJECT. 2018-11-24 19:05:03 -05:00
Push Fix issue with multiple async status files causing a hard error. 2019-01-26 16:59:54 +02:00
Base.pm Rename PGBACKREST/BACKREST constants to PROJECT. 2018-11-24 19:05:03 -05:00
Common.pm Fix issue with multiple async status files causing a hard error. 2019-01-26 16:59:54 +02:00
Info.pm Rename CipherError to CryptoError. 2018-11-06 19:38:38 -05:00