]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Fix pg_dump to not crash if -t or a similar switch is used to select a serial
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 16 Apr 2007 18:42:17 +0000 (18:42 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 16 Apr 2007 18:42:17 +0000 (18:42 +0000)
sequence for dumping without also selecting its owning table.  Make it not try
to emit ALTER SEQUENCE OWNED BY in this situation.
Per report from Michael Nolan.

src/bin/pg_dump/pg_dump.c

index c4df03083e116dd8889d655e422a87b06a6b1dec..ad695d2df1d2597552b3c94ba0ef84dc1d4ca58a 100644 (file)
@@ -12,7 +12,7 @@
  *     by PostgreSQL
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/bin/pg_dump/pg_dump.c,v 1.453 2006/10/09 23:36:59 tgl Exp $
+ *       $PostgreSQL: pgsql/src/bin/pg_dump/pg_dump.c,v 1.453.2.1 2007/04/16 18:42:17 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -8030,8 +8030,8 @@ dumpSequence(Archive *fout, TableInfo *tbinfo)
         *
         * Add a CREATE SEQUENCE statement as part of a "schema" dump (use
         * last_val for start if called is false, else use min_val for start_val).
-        * Also, if the sequence is owned by a column, add an ALTER SEQUENCE SET
-        * OWNED command for it.
+        * Also, if the sequence is owned by a column, add an ALTER SEQUENCE
+        * OWNED BY command for it.
         *
         * Add a 'SETVAL(seq, last_val, iscalled)' as part of a "data" dump.
         */
@@ -8099,7 +8099,7 @@ dumpSequence(Archive *fout, TableInfo *tbinfo)
                {
                        TableInfo  *owning_tab = findTableByOid(tbinfo->owning_tab);
 
-                       if (owning_tab)
+                       if (owning_tab && owning_tab->dobj.dump)
                        {
                                resetPQExpBuffer(query);
                                appendPQExpBuffer(query, "ALTER SEQUENCE %s",