On Sat, Sep 17, 2022 at 11:46:39AM +0200, Peter Eisentraut wrote: >> > --- a/doc/src/sgml/backup.sgml >> > +++ b/doc/src/sgml/backup.sgml >> > @@ -691,11 +691,9 @@ test ! -f >> > /mnt/server/archivedir/00000001000000A900000065 && cp pg_wal/0 >> > system crashes before the server makes a durable record of archival >> > success, >> > the server will attempt to archive the file again after restarting >> > (provided >> > archiving is still enabled). When an archive library encounters a >> > - pre-existing file, it may return <literal>true</literal> if the WAL >> > file has >> > + pre-existing file, it should return <literal>true</literal> if the >> > WAL file has >> > identical contents to the pre-existing archive and the pre-existing >> > archive >> > - is fully persisted to storage. Alternatively, the archive library may >> > - return <literal>false</literal> anytime a pre-existing file is >> > encountered, >> > - but this will require manual action by an administrator to resolve. >> > If a >> > + is fully persisted to storage. If a >> > pre-existing file contains different contents than the WAL file being >> > archived, the archive library <emphasis>must</emphasis> return >> > <literal>false</literal>. >> >> Works for me. Thanks. > > This documentation change only covers archive_library. How are users of > archive_command supposed to handle this?
I believe users of archive_command need to do something similar to what is described here. However, it might be more reasonable to expect archive_command users to simply return false when there is a pre-existing file, as the deleted text notes. IIRC that is why I added that sentence originally. -- Nathan Bossart Amazon Web Services: https://aws.amazon.com