diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2012-09-28 15:19:15 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2012-09-28 15:19:15 -0400 |
commit | 05b555d12bc2ad0d581f48a12b45174db41dc10d (patch) | |
tree | 4b279376cbd5d9bec6eb28267ab6d353abe09c15 /doc/src | |
parent | edc9109c42299ea8d7d897647967cf65d638617c (diff) | |
download | postgresql-05b555d12bc2ad0d581f48a12b45174db41dc10d.tar.gz postgresql-05b555d12bc2ad0d581f48a12b45174db41dc10d.zip |
Fix tar files emitted by pg_dump and pg_basebackup to be POSIX conformant.
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
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/protocol.sgml | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml index e72556303ab..3d72a162ebf 100644 --- a/doc/src/sgml/protocol.sgml +++ b/doc/src/sgml/protocol.sgml @@ -1759,9 +1759,11 @@ The commands accepted in walsender mode are: After the second regular result set, one or more CopyResponse results will be sent, one for PGDATA and one for each additional tablespace other than <literal>pg_default</> and <literal>pg_global</>. The data in - the CopyResponse results will be a tar format (using ustar00 - extensions) dump of the tablespace contents. After the tar data is - complete, a final ordinary result set will be sent. + the CopyResponse results will be a tar format (following the + <quote>ustar interchange format</> specified in the POSIX 1003.1-2008 + standard) dump of the tablespace contents, except that the two trailing + blocks of zeroes specified in the standard are omitted. + After the tar data is complete, a final ordinary result set will be sent. </para> <para> |