• Tom Lane's avatar
    Fix tar files emitted by pg_dump and pg_basebackup to be POSIX conformant. · 05b555d1
    Tom Lane authored
    Both programs got the "magic" string wrong, causing standard-conforming tar
    implementations to believe the output was just legacy tar format without
    any POSIX extensions.  This doesn't actually matter that much, especially
    since pg_dump failed to fill the POSIX fields anyway, but still there is
    little point in emitting tar format if we can't be compliant with the
    standard.  In addition, pg_dump failed to write the EOF marker correctly
    (there should be 2 blocks of zeroes not just one), pg_basebackup put the
    numeric group ID in the wrong place, and both programs had a pretty
    brain-dead idea of how to compute the checksum.  Fix all that and improve
    the comments a bit.
    
    pg_restore is modified to accept either the correct POSIX-compliant "magic"
    string or the previous value.  This part of the change will need to be
    back-patched to avoid an unnecessary compatibility break when a previous
    version tries to read tar-format output from 9.3 pg_dump.
    
    Brian Weaver and Tom Lane
    05b555d1
pg_backup_tar.h 1.55 KB