diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2006-01-12 21:49:19 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2006-01-12 21:49:19 +0000 |
commit | e26b09618b98358d951eb37e48df2ab6f8cb5489 (patch) | |
tree | 1590c06dce692cb37a6e4b6bb7c125156427dab2 /src/include/executor/executor.h | |
parent | 01e2a15adac9e437ac16fd0a6aef427f4eb78aad (diff) | |
download | postgresql-e26b09618b98358d951eb37e48df2ab6f8cb5489.tar.gz postgresql-e26b09618b98358d951eb37e48df2ab6f8cb5489.zip |
Repair "Halloween problem" in EvalPlanQual: a tuple that's been inserted by
our own command (or more generally, xmin = our xact and cmin >= current
command ID) should not be seen as good. Else we may try to update rows
we already updated. This error was inserted last August while fixing the
even bigger problem that the old coding wouldn't see *any* tuples inserted
by our own transaction as good. Per report from Euler Taveira de Oliveira.
Diffstat (limited to 'src/include/executor/executor.h')
-rw-r--r-- | src/include/executor/executor.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/include/executor/executor.h b/src/include/executor/executor.h index 6c7eff0d46d..77f7310d5ea 100644 --- a/src/include/executor/executor.h +++ b/src/include/executor/executor.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/executor/executor.h,v 1.115.4.1 2005/08/25 19:45:06 tgl Exp $ + * $PostgreSQL: pgsql/src/include/executor/executor.h,v 1.115.4.2 2006/01/12 21:49:19 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -109,7 +109,7 @@ extern bool ExecContextForcesOids(PlanState *planstate, bool *hasoids); extern void ExecConstraints(ResultRelInfo *resultRelInfo, TupleTableSlot *slot, EState *estate); extern TupleTableSlot *EvalPlanQual(EState *estate, Index rti, - ItemPointer tid, TransactionId priorXmax); + ItemPointer tid, TransactionId priorXmax, CommandId curCid); /* * prototypes from functions in execProcnode.c |