Fix identify_locking_dependencies to reflect the fact that fix_dependencies
authorTom Lane
Fri, 13 Mar 2009 22:50:44 +0000 (22:50 +0000)
committerTom Lane
Fri, 13 Mar 2009 22:50:44 +0000 (22:50 +0000)
previously repointed TABLE dependencies to TABLE DATA.  Mea culpa.

src/bin/pg_dump/pg_backup_archiver.c

index 8cd171c2a909aac22c5514b75b673151a11c9ce9..148aca4ef6c445b87049bddf5b5f77104942c906 100644 (file)
@@ -15,7 +15,7 @@
  *
  *
  * IDENTIFICATION
- *     $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.166 2009/03/11 03:33:29 adunstan Exp $
+ *     $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.167 2009/03/13 22:50:44 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -3732,8 +3732,11 @@ identify_locking_dependencies(TocEntry *te, TocEntry **tocsByDumpId)
        return;
 
    /*
-    * We assume the item requires exclusive lock on each TABLE item
-    * listed among its dependencies.
+    * We assume the item requires exclusive lock on each TABLE DATA item
+    * listed among its dependencies.  (This was originally a dependency
+    * on the TABLE, but fix_dependencies repointed it to the data item.
+    * Note that all the entry types we are interested in here are POST_DATA,
+    * so they will all have been changed this way.)
     */
    lockids = (DumpId *) malloc(te->nDeps * sizeof(DumpId));
    nlockids = 0;
@@ -3742,7 +3745,7 @@ identify_locking_dependencies(TocEntry *te, TocEntry **tocsByDumpId)
        DumpId  depid = te->dependencies[i];
 
        if (tocsByDumpId[depid - 1] &&
-           strcmp(tocsByDumpId[depid - 1]->desc, "TABLE") == 0)
+           strcmp(tocsByDumpId[depid - 1]->desc, "TABLE DATA") == 0)
            lockids[nlockids++] = depid;
    }