mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-28 00:01:51 +02:00
Fix table dump in pg_dump[all] with backends older than 9.5
The access method name "amname" can be dumped as of 3b925e90
, but
queries for backends older than 9.5 forgot to map it to a dummy NULL
value, causing the column to not be mapped to a number. As a result,
pg_dump was throwing some spurious errors in its stderr output coming
from libpq:
pg_dump: column number -1 is out of range 0..36
Fix this issue by adding a mapping of "amname" to NULL to all the older
queries.
Discussion: https://postgr.es/m/20190522083038.GA16837@paquier.xyz
Author: Michael Paquier
Reviewed-by: Dmitry Dolgov, Andres Freund, Tom Lane
This commit is contained in:
parent
f916221df5
commit
54487d1560
@ -6113,6 +6113,7 @@ getTables(Archive *fout, int *numTables)
|
||||
"tc.relminmxid AS tminmxid, "
|
||||
"c.relpersistence, c.relispopulated, "
|
||||
"c.relreplident, c.relpages, "
|
||||
"NULL AS amname, "
|
||||
"CASE WHEN c.reloftype <> 0 THEN c.reloftype::pg_catalog.regtype ELSE NULL END AS reloftype, "
|
||||
"d.refobjid AS owning_tab, "
|
||||
"d.refobjsubid AS owning_col, "
|
||||
@ -6162,6 +6163,7 @@ getTables(Archive *fout, int *numTables)
|
||||
"tc.relminmxid AS tminmxid, "
|
||||
"c.relpersistence, c.relispopulated, "
|
||||
"c.relreplident, c.relpages, "
|
||||
"NULL AS amname, "
|
||||
"CASE WHEN c.reloftype <> 0 THEN c.reloftype::pg_catalog.regtype ELSE NULL END AS reloftype, "
|
||||
"d.refobjid AS owning_tab, "
|
||||
"d.refobjsubid AS owning_col, "
|
||||
@ -6211,6 +6213,7 @@ getTables(Archive *fout, int *numTables)
|
||||
"tc.relminmxid AS tminmxid, "
|
||||
"c.relpersistence, c.relispopulated, "
|
||||
"'d' AS relreplident, c.relpages, "
|
||||
"NULL AS amname, "
|
||||
"CASE WHEN c.reloftype <> 0 THEN c.reloftype::pg_catalog.regtype ELSE NULL END AS reloftype, "
|
||||
"d.refobjid AS owning_tab, "
|
||||
"d.refobjsubid AS owning_col, "
|
||||
@ -6260,6 +6263,7 @@ getTables(Archive *fout, int *numTables)
|
||||
"0 AS tminmxid, "
|
||||
"c.relpersistence, 't' as relispopulated, "
|
||||
"'d' AS relreplident, c.relpages, "
|
||||
"NULL AS amname, "
|
||||
"CASE WHEN c.reloftype <> 0 THEN c.reloftype::pg_catalog.regtype ELSE NULL END AS reloftype, "
|
||||
"d.refobjid AS owning_tab, "
|
||||
"d.refobjsubid AS owning_col, "
|
||||
@ -6307,6 +6311,7 @@ getTables(Archive *fout, int *numTables)
|
||||
"0 AS tminmxid, "
|
||||
"'p' AS relpersistence, 't' as relispopulated, "
|
||||
"'d' AS relreplident, c.relpages, "
|
||||
"NULL AS amname, "
|
||||
"CASE WHEN c.reloftype <> 0 THEN c.reloftype::pg_catalog.regtype ELSE NULL END AS reloftype, "
|
||||
"d.refobjid AS owning_tab, "
|
||||
"d.refobjsubid AS owning_col, "
|
||||
@ -6353,6 +6358,7 @@ getTables(Archive *fout, int *numTables)
|
||||
"0 AS tminmxid, "
|
||||
"'p' AS relpersistence, 't' as relispopulated, "
|
||||
"'d' AS relreplident, c.relpages, "
|
||||
"NULL AS amname, "
|
||||
"NULL AS reloftype, "
|
||||
"d.refobjid AS owning_tab, "
|
||||
"d.refobjsubid AS owning_col, "
|
||||
@ -6399,6 +6405,7 @@ getTables(Archive *fout, int *numTables)
|
||||
"0 AS tminmxid, "
|
||||
"'p' AS relpersistence, 't' as relispopulated, "
|
||||
"'d' AS relreplident, c.relpages, "
|
||||
"NULL AS amname, "
|
||||
"NULL AS reloftype, "
|
||||
"d.refobjid AS owning_tab, "
|
||||
"d.refobjsubid AS owning_col, "
|
||||
@ -6444,6 +6451,7 @@ getTables(Archive *fout, int *numTables)
|
||||
"0 AS tfrozenxid, 0 AS tminmxid,"
|
||||
"'p' AS relpersistence, 't' as relispopulated, "
|
||||
"'d' AS relreplident, relpages, "
|
||||
"NULL AS amname, "
|
||||
"NULL AS reloftype, "
|
||||
"d.refobjid AS owning_tab, "
|
||||
"d.refobjsubid AS owning_col, "
|
||||
|
Loading…
Reference in New Issue
Block a user