We no longer need a snapshot set after opening the finishing transaction: this
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Wed, 19 Mar 2008 14:18:21 +0000 (14:18 +0000)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Wed, 19 Mar 2008 14:18:21 +0000 (14:18 +0000)
is redundant because autovacuum now always analyzes a single table per
transaction.

src/backend/commands/vacuum.c

index 72a50690ba45c926f09106e31a1561690b0b4b4c..bc36ef3fed4a6d2cd99eca32f5c34e3508942abc 100644 (file)
@@ -13,7 +13,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/commands/vacuum.c,v 1.367 2008/03/14 17:25:58 alvherre Exp $
+ *       $PostgreSQL: pgsql/src/backend/commands/vacuum.c,v 1.368 2008/03/19 14:18:21 alvherre Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -482,15 +482,6 @@ vacuum(VacuumStmt *vacstmt, List *relids,
                 * PostgresMain().
                 */
                StartTransactionCommand();
-
-               /*
-                * Re-establish the transaction snapshot.  This is wasted effort when
-                * we are called as a normal utility command, because the new
-                * transaction will be dropped immediately by PostgresMain(); but it's
-                * necessary if we are called from autovacuum because autovacuum might
-                * continue on to do an ANALYZE-only call.
-                */
-               ActiveSnapshot = CopySnapshot(GetTransactionSnapshot());
        }
 
        if (vacstmt->vacuum && !IsAutoVacuumWorkerProcess())