The code to unlink dropped relations in FinishPreparedTransaction() was
authorHeikki Linnakangas
Thu, 25 Jun 2009 19:05:52 +0000 (19:05 +0000)
committerHeikki Linnakangas
Thu, 25 Jun 2009 19:05:52 +0000 (19:05 +0000)
acting like runs inside WAL recovery, but it doesn't. I must've copy-pasted
this from a redo-function in the relation forks patch. Noticed by Tom Lane
while he was looking through callers of smgrdounlink().

src/backend/access/transam/twophase.c

index 4a43579c407d77359f34349b67416b3f179673d8..6de9c73f6ef2450a3162d75aa5b4852857ca66f3 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *     $PostgreSQL: pgsql/src/backend/access/transam/twophase.c,v 1.53 2009/06/11 14:48:54 momjian Exp $
+ *     $PostgreSQL: pgsql/src/backend/access/transam/twophase.c,v 1.54 2009/06/25 19:05:52 heikki Exp $
  *
  * NOTES
  *     Each global transaction is associated with a global transaction
@@ -1241,10 +1241,7 @@ FinishPreparedTransaction(const char *gid, bool isCommit)
        for (fork = 0; fork <= MAX_FORKNUM; fork++)
        {
            if (smgrexists(srel, fork))
-           {
-               XLogDropRelation(delrels[i], fork);
-               smgrdounlink(srel, fork, false, true);
-           }
+               smgrdounlink(srel, fork, false, false);
        }
        smgrclose(srel);
    }