From: Christoph Berg Date: Tue, 15 Apr 2025 12:43:10 +0000 (+0000) Subject: Mask full LSN and checksum in tests X-Git-Tag: REL_17_2~9 X-Git-Url: http://waps.l3s.uni-hannover.de/gitweb/?a=commitdiff_plain;h=ffe9db85b7365e7ebf47e68a870cb4826b9c42a1;p=pg_filedump.git Mask full LSN and checksum in tests The old LSN masking didn't consider LSNs with a log id with two or more digits. Checksums were hard-coded to 0000 so far, but the server might actually write them. To not clutter the test files with ever-longer sed commands, move the command to a new sed.sh file. Test files updated to follow this change, but there are pre-existing problems on older PG majors and 32-bit that are still open. Close #37. Reported-By: Maksim Melnikov --- diff --git a/expected/datatypes.out b/expected/datatypes.out index ff40415..74b3ecf 100644 --- a/expected/datatypes.out +++ b/expected/datatypes.out @@ -14,7 +14,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -27,9 +27,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8056 (0x1f78) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8016 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -48,7 +48,7 @@ COPY: 4 four ---------------------------------------------------------------------------------------------- -- -- do one test without options -\! pg_filedump int,text.heap | sed -e 's/logid ./logid ./' -e 's/recoff 0x......../recoff 0x......../' +\! pg_filedump int,text.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -61,9 +61,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8056 (0x1f78) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8016 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -88,7 +88,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -101,9 +101,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8072 (0x1f88) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8032 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -134,7 +134,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -147,9 +147,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8104 (0x1fa8) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8068 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -178,7 +178,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -191,9 +191,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 32 (0x0020) Block: Size 8192 Version 4 Upper 8136 (0x1fc8) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 2 Free Space: 8104 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 32 ----- @@ -220,7 +220,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -233,9 +233,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8104 (0x1fa8) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8068 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -264,7 +264,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -277,9 +277,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7976 (0x1f28) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7924 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -316,7 +316,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -329,9 +329,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8072 (0x1f88) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8032 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -362,7 +362,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -375,9 +375,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8032 (0x1f60) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7988 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- @@ -410,7 +410,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -423,9 +423,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 32 (0x0020) Block: Size 8192 Version 4 Upper 8136 (0x1fc8) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 2 Free Space: 8104 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 32 ----- @@ -452,7 +452,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -465,9 +465,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 7992 (0x1f38) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 7956 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -496,7 +496,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -509,9 +509,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8072 (0x1f88) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8032 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -542,7 +542,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -555,9 +555,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8072 (0x1f88) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8032 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -588,7 +588,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -601,9 +601,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 32 (0x0020) Block: Size 8192 Version 4 Upper 8128 (0x1fc0) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 2 Free Space: 8096 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 32 ----- @@ -630,7 +630,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -643,9 +643,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8072 (0x1f88) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8032 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -676,7 +676,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -689,9 +689,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8040 (0x1f68) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7996 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- @@ -725,7 +725,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -738,9 +738,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8040 (0x1f68) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7996 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- @@ -773,7 +773,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -786,9 +786,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8008 (0x1f48) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7964 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- @@ -821,7 +821,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -834,9 +834,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8088 (0x1f98) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8052 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -865,7 +865,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -878,9 +878,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8096 (0x1fa0) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8060 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -909,7 +909,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -922,9 +922,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8096 (0x1fa0) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8060 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -953,7 +953,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -966,9 +966,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8072 (0x1f88) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8032 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- diff --git a/expected/datatypes_3.out b/expected/datatypes_3.out index f7ea25f..6318d98 100644 --- a/expected/datatypes_3.out +++ b/expected/datatypes_3.out @@ -14,7 +14,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -27,9 +27,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8068 (0x1f84) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8028 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -48,7 +48,7 @@ COPY: 4 four ---------------------------------------------------------------------------------------------- -- -- do one test without options -\! pg_filedump int,text.heap | sed -e 's/logid ./logid ./' -e 's/recoff 0x......../recoff 0x......../' +\! pg_filedump int,text.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -61,9 +61,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8068 (0x1f84) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8028 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -88,7 +88,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -101,9 +101,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8072 (0x1f88) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8032 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -134,7 +134,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -147,9 +147,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8112 (0x1fb0) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8076 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -178,7 +178,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -191,9 +191,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 32 (0x0020) Block: Size 8192 Version 4 Upper 8140 (0x1fcc) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 2 Free Space: 8108 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 32 ----- @@ -220,7 +220,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -233,9 +233,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8104 (0x1fa8) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8068 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -264,7 +264,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -277,9 +277,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 8000 (0x1f40) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7948 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -316,7 +316,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -329,9 +329,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8084 (0x1f94) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8044 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -362,7 +362,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -375,9 +375,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8040 (0x1f68) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7996 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- @@ -410,7 +410,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -423,9 +423,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 32 (0x0020) Block: Size 8192 Version 4 Upper 8136 (0x1fc8) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 2 Free Space: 8104 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 32 ----- @@ -452,7 +452,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -465,9 +465,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 7992 (0x1f38) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 7956 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -496,7 +496,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -509,9 +509,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8084 (0x1f94) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8044 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -542,7 +542,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -555,9 +555,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8084 (0x1f94) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8044 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -588,7 +588,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -601,9 +601,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 32 (0x0020) Block: Size 8192 Version 4 Upper 8132 (0x1fc4) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 2 Free Space: 8100 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 32 ----- @@ -630,7 +630,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -643,9 +643,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8072 (0x1f88) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8032 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- @@ -676,7 +676,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -689,9 +689,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8040 (0x1f68) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7996 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- @@ -725,7 +725,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -738,9 +738,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8040 (0x1f68) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7996 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- @@ -773,7 +773,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -786,9 +786,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8024 (0x1f58) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7980 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- @@ -821,7 +821,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -834,9 +834,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8088 (0x1f98) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8052 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -865,7 +865,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -878,9 +878,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8104 (0x1fa8) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8068 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -909,7 +909,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -922,9 +922,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 36 (0x0024) Block: Size 8192 Version 4 Upper 8104 (0x1fa8) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 3 Free Space: 8068 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 36 ----- @@ -953,7 +953,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -966,9 +966,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 40 (0x0028) Block: Size 8192 Version 4 Upper 8084 (0x1f94) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 4 Free Space: 8044 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 40 ----- diff --git a/expected/float.out b/expected/float.out index 625abb2..8095330 100644 --- a/expected/float.out +++ b/expected/float.out @@ -15,7 +15,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -28,9 +28,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 48 (0x0030) Block: Size 8192 Version 4 Upper 8008 (0x1f48) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 6 Free Space: 7960 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 48 ----- @@ -65,7 +65,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -78,9 +78,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 48 (0x0030) Block: Size 8192 Version 4 Upper 8008 (0x1f48) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 6 Free Space: 7960 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 48 ----- diff --git a/expected/float_1.out b/expected/float_1.out index f64a058..8ebff2b 100644 --- a/expected/float_1.out +++ b/expected/float_1.out @@ -15,7 +15,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -28,9 +28,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 48 (0x0030) Block: Size 8192 Version 4 Upper 8008 (0x1f48) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 6 Free Space: 7960 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 48 ----- @@ -65,7 +65,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -78,9 +78,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 48 (0x0030) Block: Size 8192 Version 4 Upper 8008 (0x1f48) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 6 Free Space: 7960 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 48 ----- diff --git a/expected/float_3.out b/expected/float_3.out index 441ebe8..7b26e3a 100644 --- a/expected/float_3.out +++ b/expected/float_3.out @@ -15,7 +15,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -28,9 +28,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 48 (0x0030) Block: Size 8192 Version 4 Upper 8028 (0x1f5c) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 6 Free Space: 7980 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 48 ----- @@ -65,7 +65,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -78,9 +78,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 48 (0x0030) Block: Size 8192 Version 4 Upper 8008 (0x1f48) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 6 Free Space: 7960 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 48 ----- diff --git a/expected/float_4.out b/expected/float_4.out index 731487a..e07d93c 100644 --- a/expected/float_4.out +++ b/expected/float_4.out @@ -15,7 +15,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -28,9 +28,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 48 (0x0030) Block: Size 8192 Version 4 Upper 8028 (0x1f5c) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 6 Free Space: 7980 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 48 ----- @@ -65,7 +65,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -78,9 +78,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 48 (0x0030) Block: Size 8192 Version 4 Upper 8008 (0x1f48) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 6 Free Space: 7960 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 48 ----- diff --git a/expected/numeric.out b/expected/numeric.out index 5b24dcb..e1e90c0 100644 --- a/expected/numeric.out +++ b/expected/numeric.out @@ -16,7 +16,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -29,9 +29,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7976 (0x1f28) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7924 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- diff --git a/expected/numeric_1.out b/expected/numeric_1.out index 1ba9896..c2f8844 100644 --- a/expected/numeric_1.out +++ b/expected/numeric_1.out @@ -19,7 +19,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -32,9 +32,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8040 (0x1f68) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 7996 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- diff --git a/expected/numeric_3.out b/expected/numeric_3.out index 8a29621..d4def9a 100644 --- a/expected/numeric_3.out +++ b/expected/numeric_3.out @@ -16,7 +16,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -29,9 +29,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7992 (0x1f38) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7940 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- diff --git a/expected/numeric_4.out b/expected/numeric_4.out index 2065fe0..b17d992 100644 --- a/expected/numeric_4.out +++ b/expected/numeric_4.out @@ -19,7 +19,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -32,9 +32,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 44 (0x002c) Block: Size 8192 Version 4 Upper 8048 (0x1f70) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 5 Free Space: 8004 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 44 ----- diff --git a/expected/toast.out b/expected/toast.out index a52a29d..08369a7 100644 --- a/expected/toast.out +++ b/expected/toast.out @@ -26,7 +26,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'reltoastrelid')) as toast_loi \set output :reltoastrelid \lo_export :toast_loid :output \setenv relname :relname -\! pg_filedump -D text,text $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D text,text $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -39,9 +39,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7472 (0x1d30) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7420 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -52,17 +52,17 @@ COPY: long inline uncompressed xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Item 3 -- Length: 64 Offset: 7824 (0x1e90) Flags: NORMAL COPY: external uncompressed (TOASTED,uncompressed) Item 4 -- Length: 107 Offset: 7712 (0x1e20) Flags: NORMAL -COPY: inline compressed pglz 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< +COPY: inline compressed pglz 0123456789 8< [snipped] Item 5 -- Length: 67 Offset: 7640 (0x1dd8) Flags: NORMAL COPY: extended compressed pglz (TOASTED,pglz) Item 6 -- Length: 90 Offset: 7544 (0x1d78) Flags: NORMAL -COPY: inline compressed lz4 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< +COPY: inline compressed lz4 0123456789 8< [snipped] Item 7 -- Length: 66 Offset: 7472 (0x1d30) Flags: NORMAL COPY: extended compressed lz4 (TOASTED,lz4) *** End of File Encountered. Last Block Read: 0 *** -\! pg_filedump -D text,text -t $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" -e 's/id: ...../id: ...../g' -e 's/ 8< .*//' +\! pg_filedump -D text,text -t $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -75,9 +75,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7472 (0x1d30) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7420 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -87,17 +87,17 @@ COPY: short inline xxx COPY: long inline uncompressed xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Item 3 -- Length: 64 Offset: 7824 (0x1e90) Flags: NORMAL TOAST value. Raw size: 2804, external size: 2800, value id: ....., toast relation id: ....., chunks: 2 -COPY: external uncompressed 0123456789 +COPY: external uncompressed 0123456789 8< [snipped] Item 4 -- Length: 107 Offset: 7712 (0x1e20) Flags: NORMAL -COPY: inline compressed pglz 0123456789 +COPY: inline compressed pglz 0123456789 8< [snipped] Item 5 -- Length: 67 Offset: 7640 (0x1dd8) Flags: NORMAL TOAST value. Raw size: 280004, external size: 3226, value id: ....., toast relation id: ....., chunks: 2 -COPY: extended compressed pglz 0123456789 +COPY: extended compressed pglz 0123456789 8< [snipped] Item 6 -- Length: 90 Offset: 7544 (0x1d78) Flags: NORMAL -COPY: inline compressed lz4 0123456789 +COPY: inline compressed lz4 0123456789 8< [snipped] Item 7 -- Length: 66 Offset: 7472 (0x1d30) Flags: NORMAL TOAST value. Raw size: 700004, external size: 2772, value id: ....., toast relation id: ....., chunks: 2 -COPY: extended compressed lz4 0123456789 +COPY: extended compressed lz4 0123456789 8< [snipped] *** End of File Encountered. Last Block Read: 0 *** diff --git a/expected/toast_1.out b/expected/toast_1.out index 1467395..b4645cb 100644 --- a/expected/toast_1.out +++ b/expected/toast_1.out @@ -29,7 +29,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'reltoastrelid')) as toast_loi \set output :reltoastrelid \lo_export :toast_loid :output \setenv relname :relname -\! pg_filedump -D text,text $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D text,text $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -42,9 +42,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7456 (0x1d20) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7404 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -55,17 +55,17 @@ COPY: long inline uncompressed xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Item 3 -- Length: 64 Offset: 7824 (0x1e90) Flags: NORMAL COPY: external uncompressed (TOASTED,uncompressed) Item 4 -- Length: 107 Offset: 7712 (0x1e20) Flags: NORMAL -COPY: inline compressed pglz 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< +COPY: inline compressed pglz 0123456789 8< [snipped] Item 5 -- Length: 67 Offset: 7640 (0x1dd8) Flags: NORMAL COPY: extended compressed pglz (TOASTED,pglz) Item 6 -- Length: 107 Offset: 7528 (0x1d68) Flags: NORMAL -COPY: inline compressed lz4 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< +COPY: inline compressed lz4 0123456789 8< [snipped] Item 7 -- Length: 66 Offset: 7456 (0x1d20) Flags: NORMAL COPY: extended compressed lz4 (TOASTED,pglz) *** End of File Encountered. Last Block Read: 0 *** -\! pg_filedump -D text,text -t $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" -e 's/id: ...../id: ...../g' -e 's/ 8< .*//' +\! pg_filedump -D text,text -t $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -78,9 +78,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7456 (0x1d20) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7404 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -90,17 +90,17 @@ COPY: short inline xxx COPY: long inline uncompressed xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Item 3 -- Length: 64 Offset: 7824 (0x1e90) Flags: NORMAL TOAST value. Raw size: 2804, external size: 2800, value id: ....., toast relation id: ....., chunks: 2 -COPY: external uncompressed 0123456789 +COPY: external uncompressed 0123456789 8< [snipped] Item 4 -- Length: 107 Offset: 7712 (0x1e20) Flags: NORMAL -COPY: inline compressed pglz 0123456789 +COPY: inline compressed pglz 0123456789 8< [snipped] Item 5 -- Length: 67 Offset: 7640 (0x1dd8) Flags: NORMAL TOAST value. Raw size: 280004, external size: 3226, value id: ....., toast relation id: ....., chunks: 2 -COPY: extended compressed pglz 0123456789 +COPY: extended compressed pglz 0123456789 8< [snipped] Item 6 -- Length: 107 Offset: 7528 (0x1d68) Flags: NORMAL -COPY: inline compressed lz4 0123456789 +COPY: inline compressed lz4 0123456789 8< [snipped] Item 7 -- Length: 66 Offset: 7456 (0x1d20) Flags: NORMAL TOAST value. Raw size: 700004, external size: 8035, value id: ....., toast relation id: ....., chunks: 5 -COPY: extended compressed lz4 0123456789 +COPY: extended compressed lz4 0123456789 8< [snipped] *** End of File Encountered. Last Block Read: 0 *** diff --git a/expected/toast_3.out b/expected/toast_3.out index 5d9b29a..3b18250 100644 --- a/expected/toast_3.out +++ b/expected/toast_3.out @@ -26,7 +26,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'reltoastrelid')) as toast_loi \set output :reltoastrelid \lo_export :toast_loid :output \setenv relname :relname -\! pg_filedump -D text,text $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D text,text $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -39,9 +39,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7492 (0x1d44) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7440 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -52,17 +52,17 @@ COPY: long inline uncompressed xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Item 3 -- Length: 64 Offset: 7828 (0x1e94) Flags: NORMAL COPY: external uncompressed (TOASTED,uncompressed) Item 4 -- Length: 107 Offset: 7720 (0x1e28) Flags: NORMAL -COPY: inline compressed pglz 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< +COPY: inline compressed pglz 0123456789 8< [snipped] Item 5 -- Length: 67 Offset: 7652 (0x1de4) Flags: NORMAL COPY: extended compressed pglz (TOASTED,pglz) Item 6 -- Length: 90 Offset: 7560 (0x1d88) Flags: NORMAL -COPY: inline compressed lz4 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< +COPY: inline compressed lz4 0123456789 8< [snipped] Item 7 -- Length: 66 Offset: 7492 (0x1d44) Flags: NORMAL COPY: extended compressed lz4 (TOASTED,lz4) *** End of File Encountered. Last Block Read: 0 *** -\! pg_filedump -D text,text -t $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" -e 's/id: ...../id: ...../g' -e 's/ 8< .*//' +\! pg_filedump -D text,text -t $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -75,9 +75,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7492 (0x1d44) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7440 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -87,17 +87,17 @@ COPY: short inline xxx COPY: long inline uncompressed xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Item 3 -- Length: 64 Offset: 7828 (0x1e94) Flags: NORMAL TOAST value. Raw size: 2804, external size: 2800, value id: ....., toast relation id: ....., chunks: 2 -COPY: external uncompressed 0123456789 +COPY: external uncompressed 0123456789 8< [snipped] Item 4 -- Length: 107 Offset: 7720 (0x1e28) Flags: NORMAL -COPY: inline compressed pglz 0123456789 +COPY: inline compressed pglz 0123456789 8< [snipped] Item 5 -- Length: 67 Offset: 7652 (0x1de4) Flags: NORMAL TOAST value. Raw size: 280004, external size: 3226, value id: ....., toast relation id: ....., chunks: 2 -COPY: extended compressed pglz 0123456789 +COPY: extended compressed pglz 0123456789 8< [snipped] Item 6 -- Length: 90 Offset: 7560 (0x1d88) Flags: NORMAL -COPY: inline compressed lz4 0123456789 +COPY: inline compressed lz4 0123456789 8< [snipped] Item 7 -- Length: 66 Offset: 7492 (0x1d44) Flags: NORMAL TOAST value. Raw size: 700004, external size: 2772, value id: ....., toast relation id: ....., chunks: 2 -COPY: extended compressed lz4 0123456789 +COPY: extended compressed lz4 0123456789 8< [snipped] *** End of File Encountered. Last Block Read: 0 *** diff --git a/expected/toast_4.out b/expected/toast_4.out index 805e23d..95436c7 100644 --- a/expected/toast_4.out +++ b/expected/toast_4.out @@ -29,7 +29,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'reltoastrelid')) as toast_loi \set output :reltoastrelid \lo_export :toast_loid :output \setenv relname :relname -\! pg_filedump -D text,text $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D text,text $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -42,9 +42,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 52 (0x0034) Block: Size 8192 Version 4 Upper 7476 (0x1d34) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7424 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -55,17 +55,17 @@ COPY: long inline uncompressed xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Item 3 -- Length: 64 Offset: 7828 (0x1e94) Flags: NORMAL COPY: external uncompressed (TOASTED,uncompressed) Item 4 -- Length: 107 Offset: 7720 (0x1e28) Flags: NORMAL -COPY: inline compressed pglz 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< +COPY: inline compressed pglz 0123456789 8< [snipped] Item 5 -- Length: 67 Offset: 7652 (0x1de4) Flags: NORMAL COPY: extended compressed pglz (TOASTED,pglz) Item 6 -- Length: 107 Offset: 7544 (0x1d78) Flags: NORMAL -COPY: inline compressed lz4 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< 0123456789 8< +COPY: inline compressed lz4 0123456789 8< [snipped] Item 7 -- Length: 66 Offset: 7476 (0x1d34) Flags: NORMAL COPY: extended compressed lz4 (TOASTED,pglz) *** End of File Encountered. Last Block Read: 0 *** -\! pg_filedump -D text,text -t $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" -e 's/id: ...../id: ...../g' -e 's/ 8< .*//' +\! pg_filedump -D text,text -t $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -80,7 +80,7 @@ Block 0 ******************************************************** Block: Size 8192 Version 4 Upper 7476 (0x1d34) LSN: logid . recoff 0x........ Special 8192 (0x2000) Items: 7 Free Space: 7424 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 52 ----- @@ -90,17 +90,17 @@ COPY: short inline xxx COPY: long inline uncompressed xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Item 3 -- Length: 64 Offset: 7828 (0x1e94) Flags: NORMAL TOAST value. Raw size: 2804, external size: 2800, value id: ....., toast relation id: ....., chunks: 2 -COPY: external uncompressed 0123456789 +COPY: external uncompressed 0123456789 8< [snipped] Item 4 -- Length: 107 Offset: 7720 (0x1e28) Flags: NORMAL -COPY: inline compressed pglz 0123456789 +COPY: inline compressed pglz 0123456789 8< [snipped] Item 5 -- Length: 67 Offset: 7652 (0x1de4) Flags: NORMAL TOAST value. Raw size: 280004, external size: 3226, value id: ....., toast relation id: ....., chunks: 2 -COPY: extended compressed pglz 0123456789 +COPY: extended compressed pglz 0123456789 8< [snipped] Item 6 -- Length: 107 Offset: 7544 (0x1d78) Flags: NORMAL -COPY: inline compressed lz4 0123456789 +COPY: inline compressed lz4 0123456789 8< [snipped] Item 7 -- Length: 66 Offset: 7476 (0x1d34) Flags: NORMAL TOAST value. Raw size: 700004, external size: 8035, value id: ....., toast relation id: ....., chunks: 5 -COPY: extended compressed lz4 0123456789 +COPY: extended compressed lz4 0123456789 8< [snipped] *** End of File Encountered. Last Block Read: 0 *** diff --git a/expected/xml.out b/expected/xml.out index c7c1040..6d81506 100644 --- a/expected/xml.out +++ b/expected/xml.out @@ -15,7 +15,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -28,9 +28,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 32 (0x0020) Block: Size 8192 Version 4 Upper 8128 (0x1fc0) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 2 Free Space: 8096 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 32 ----- diff --git a/expected/xml_1.out b/expected/xml_1.out index 2022565..282452f 100644 --- a/expected/xml_1.out +++ b/expected/xml_1.out @@ -20,7 +20,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility diff --git a/expected/xml_3.out b/expected/xml_3.out index fffda67..6aa5340 100644 --- a/expected/xml_3.out +++ b/expected/xml_3.out @@ -15,7 +15,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \set output :relname '.heap' \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh ******************************************************************* * PostgreSQL File/Block Formatted Dump Utility @@ -28,9 +28,9 @@ Block 0 ********************************************************
----- Block Offset: 0x00000000 Offsets: Lower 32 (0x0020) Block: Size 8192 Version 4 Upper 8132 (0x1fc4) - LSN: logid . recoff 0x........ Special 8192 (0x2000) + LSN: logid ...... recoff 0x........ Special 8192 (0x2000) Items: 2 Free Space: 8100 - Checksum: 0x0000 Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) + Checksum: 0x.... Prune XID: 0x00000000 Flags: 0x0004 (ALL_VISIBLE) Length (including item array): 32 ----- diff --git a/run_test.sql b/run_test.sql index 23e776c..c1f6709 100644 --- a/run_test.sql +++ b/run_test.sql @@ -9,7 +9,7 @@ select lo_import(format('base/%s/%s', :'datoid', :'relfilenode')) as oid \gset \lo_export :oid :output \setenv relname :relname -\! pg_filedump -D $relname $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" +\! pg_filedump -D $relname $relname.heap | ./sed.sh -- ---------------------------------------------------------------------------------------------- diff --git a/sed.sh b/sed.sh new file mode 100755 index 0000000..b449684 --- /dev/null +++ b/sed.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +sed -e "s/logid ....../logid ....../" \ + -e "s/recoff 0x......../recoff 0x......../" \ + -e "s/Checksum: 0x..../Checksum: 0x..../" \ + -e "s/id: ...../id: ...../g" \ + -e "s/ 8< .*/ 8< [snipped]/" diff --git a/sql/datatypes.sql b/sql/datatypes.sql index e1a7703..4fcd862 100644 --- a/sql/datatypes.sql +++ b/sql/datatypes.sql @@ -10,7 +10,7 @@ insert into "int,text" values (1, 'one'), (null, 'two'), (3, null), (4, 'four'); \ir run_test.sql -- do one test without options -\! pg_filedump int,text.heap | sed -e 's/logid ./logid ./' -e 's/recoff 0x......../recoff 0x......../' +\! pg_filedump int,text.heap | ./sed.sh ---------------------------------------------------------------------------------------------- diff --git a/sql/toast.sql b/sql/toast.sql index 985f100..142a6c5 100644 --- a/sql/toast.sql +++ b/sql/toast.sql @@ -34,5 +34,5 @@ select lo_import(format('base/%s/%s', :'datoid', :'reltoastrelid')) as toast_loi \lo_export :toast_loid :output \setenv relname :relname -\! pg_filedump -D text,text $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" -\! pg_filedump -D text,text -t $relname.heap | sed -e "s/logid ./logid ./" -e "s/recoff 0x......../recoff 0x......../" -e 's/id: ...../id: ...../g' -e 's/ 8< .*//' +\! pg_filedump -D text,text $relname.heap | ./sed.sh +\! pg_filedump -D text,text -t $relname.heap | ./sed.sh