Skip to content

Commit 58d8584

Browse files
committed
pg_dump failed on any database containing large objects,
because it ignored the LOs themselves but failed to ignore the indexes on the LOs. How long has this been broken??
1 parent f463c44 commit 58d8584

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

src/bin/pg_dump/pg_dump.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
*
2222
*
2323
* IDENTIFICATION
24-
* $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.114 1999/05/29 10:25:31 vadim Exp $
24+
* $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.115 1999/06/03 04:01:16 tgl Exp $
2525
*
2626
* Modifications - 6/10/96 - dave@bensoft.com - version 1.13.dhb
2727
*
@@ -1419,7 +1419,9 @@ getTables(int *numTables, FuncInfo *finfo, int numFuncs)
14191419
* ordering by oid is important so that we always process the parent
14201420
* tables before the child tables when traversing the tblinfo*
14211421
*
1422-
* we ignore tables that start with xinv
1422+
* we ignore tables that are not type 'r' (ordinary relation)
1423+
* or 'S' (sequence) --- in particular, Large Object relations
1424+
* (type 'l') are ignored.
14231425
*/
14241426

14251427
sprintf(query,
@@ -1918,7 +1920,7 @@ getIndices(int *numIndices)
19181920
* find all the user-defined indices. We do not handle partial
19191921
* indices.
19201922
*
1921-
* skip 'xinx*' - indices on inversion objects
1923+
* Notice we skip indices on inversion objects (relkind 'l')
19221924
*
19231925
* this is a 4-way join !!
19241926
*/
@@ -1930,7 +1932,7 @@ getIndices(int *numIndices)
19301932
"from pg_index i, pg_class t1, pg_class t2, pg_am a "
19311933
"where t1.oid = i.indexrelid and t2.oid = i.indrelid "
19321934
"and t1.relam = a.oid and i.indexrelid > '%u'::oid "
1933-
"and t2.relname !~ '^pg_' and t1.relkind != 'l'",
1935+
"and t2.relname !~ '^pg_' and t2.relkind != 'l'",
19341936
g_last_builtin_oid);
19351937

19361938
res = PQexec(g_conn, query);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy