Commit 05b555d
committed
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 Lane1 parent edc9109 commit 05b555d
File tree
4 files changed
+110
-69
lines changed- doc/src/sgml
- src
- backend/replication
- bin/pg_dump
4 files changed
+110
-69
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1759 | 1759 | | |
1760 | 1760 | | |
1761 | 1761 | | |
1762 | | - | |
1763 | | - | |
1764 | | - | |
| 1762 | + | |
| 1763 | + | |
| 1764 | + | |
| 1765 | + | |
| 1766 | + | |
1765 | 1767 | | |
1766 | 1768 | | |
1767 | 1769 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
568 | 568 | | |
569 | 569 | | |
570 | 570 | | |
571 | | - | |
| 571 | + | |
572 | 572 | | |
573 | 573 | | |
574 | 574 | | |
| |||
763 | 763 | | |
764 | 764 | | |
765 | 765 | | |
766 | | - | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
767 | 772 | | |
768 | 773 | | |
769 | 774 | | |
770 | | - | |
| 775 | + | |
771 | 776 | | |
772 | 777 | | |
773 | 778 | | |
| |||
846 | 851 | | |
847 | 852 | | |
848 | 853 | | |
849 | | - | |
850 | | - | |
851 | 854 | | |
| 855 | + | |
| 856 | + | |
| 857 | + | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
852 | 861 | | |
853 | 862 | | |
854 | 863 | | |
| |||
860 | 869 | | |
861 | 870 | | |
862 | 871 | | |
863 | | - | |
864 | | - | |
| 872 | + | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
865 | 877 | | |
866 | 878 | | |
867 | 879 | | |
| |||
871 | 883 | | |
872 | 884 | | |
873 | 885 | | |
874 | | - | |
| 886 | + | |
875 | 887 | | |
876 | | - | |
| 888 | + | |
877 | 889 | | |
878 | 890 | | |
879 | 891 | | |
| |||
884 | 896 | | |
885 | 897 | | |
886 | 898 | | |
887 | | - | |
888 | | - | |
| 899 | + | |
889 | 900 | | |
890 | 901 | | |
891 | 902 | | |
892 | 903 | | |
893 | 904 | | |
| 905 | + | |
894 | 906 | | |
895 | 907 | | |
896 | 908 | | |
| |||
900 | 912 | | |
901 | 913 | | |
902 | 914 | | |
903 | | - | |
| 915 | + | |
| 916 | + | |
904 | 917 | | |
905 | | - | |
906 | | - | |
| 918 | + | |
| 919 | + | |
907 | 920 | | |
908 | 921 | | |
909 | 922 | | |
| |||
913 | 926 | | |
914 | 927 | | |
915 | 928 | | |
916 | | - | |
917 | | - | |
| 929 | + | |
| 930 | + | |
918 | 931 | | |
919 | | - | |
920 | | - | |
| 932 | + | |
| 933 | + | |
921 | 934 | | |
922 | | - | |
923 | | - | |
924 | | - | |
925 | | - | |
926 | | - | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
927 | 943 | | |
| 944 | + | |
928 | 945 | | |
929 | 946 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
882 | 882 | | |
883 | 883 | | |
884 | 884 | | |
885 | | - | |
886 | | - | |
| 885 | + | |
| 886 | + | |
| 887 | + | |
| 888 | + | |
887 | 889 | | |
888 | 890 | | |
889 | 891 | | |
| |||
1032 | 1034 | | |
1033 | 1035 | | |
1034 | 1036 | | |
1035 | | - | |
| 1037 | + | |
| 1038 | + | |
| 1039 | + | |
| 1040 | + | |
| 1041 | + | |
| 1042 | + | |
1036 | 1043 | | |
1037 | 1044 | | |
1038 | 1045 | | |
1039 | | - | |
| 1046 | + | |
1040 | 1047 | | |
1041 | 1048 | | |
1042 | 1049 | | |
| |||
1050 | 1057 | | |
1051 | 1058 | | |
1052 | 1059 | | |
1053 | | - | |
1054 | | - | |
| 1060 | + | |
| 1061 | + | |
| 1062 | + | |
1055 | 1063 | | |
1056 | | - | |
1057 | | - | |
| 1064 | + | |
| 1065 | + | |
| 1066 | + | |
| 1067 | + | |
| 1068 | + | |
1058 | 1069 | | |
1059 | 1070 | | |
1060 | 1071 | | |
| |||
1329 | 1340 | | |
1330 | 1341 | | |
1331 | 1342 | | |
1332 | | - | |
1333 | | - | |
1334 | 1343 | | |
| 1344 | + | |
| 1345 | + | |
| 1346 | + | |
| 1347 | + | |
| 1348 | + | |
| 1349 | + | |
1335 | 1350 | | |
1336 | 1351 | | |
1337 | 1352 | | |
1338 | 1353 | | |
1339 | 1354 | | |
1340 | 1355 | | |
1341 | | - | |
| 1356 | + | |
1342 | 1357 | | |
1343 | 1358 | | |
1344 | | - | |
| 1359 | + | |
1345 | 1360 | | |
1346 | 1361 | | |
1347 | | - | |
| 1362 | + | |
1348 | 1363 | | |
1349 | | - | |
| 1364 | + | |
1350 | 1365 | | |
1351 | 1366 | | |
1352 | 1367 | | |
1353 | 1368 | | |
1354 | 1369 | | |
1355 | 1370 | | |
1356 | | - | |
1357 | | - | |
| 1371 | + | |
1358 | 1372 | | |
1359 | 1373 | | |
1360 | 1374 | | |
1361 | 1375 | | |
1362 | | - | |
| 1376 | + | |
1363 | 1377 | | |
1364 | | - | |
1365 | | - | |
| 1378 | + | |
| 1379 | + | |
| 1380 | + | |
| 1381 | + | |
| 1382 | + | |
1366 | 1383 | | |
1367 | | - | |
1368 | 1384 | | |
1369 | | - | |
1370 | | - | |
| 1385 | + | |
| 1386 | + | |
1371 | 1387 | | |
1372 | 1388 | | |
1373 | | - | |
1374 | | - | |
| 1389 | + | |
| 1390 | + | |
1375 | 1391 | | |
1376 | | - | |
1377 | | - | |
| 1392 | + | |
| 1393 | + | |
1378 | 1394 | | |
1379 | | - | |
1380 | | - | |
1381 | | - | |
| 1395 | + | |
| 1396 | + | |
1382 | 1397 | | |
1383 | | - | |
1384 | | - | |
1385 | | - | |
1386 | | - | |
1387 | | - | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
1388 | 1406 | | |
| 1407 | + | |
1389 | 1408 | | |
1390 | 1409 | | |
1391 | 1410 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
12 | | - | |
| 11 | + | |
| 12 | + | |
13 | 13 | | |
14 | | - | |
15 | | - | |
16 | | - | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
20 | 21 | | |
21 | | - | |
22 | | - | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
23 | 26 | | |
24 | 27 | | |
25 | | - | |
| 28 | + | |
26 | 29 | | |
27 | 30 | | |
28 | 31 | | |
| |||
0 commit comments