aboutsummaryrefslogtreecommitdiff
path: root/src/backend/commands/async.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-08-25 19:45:06 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-08-25 19:45:06 +0000
commit08e12b89d5e094315f2b5d238916b2f56ad8ad7a (patch)
tree83461a63669fe228bebaaa2722ab281e0d2da58f /src/backend/commands/async.c
parent5576a611cd8f358a751f53ad787b4b659bbf77cc (diff)
downloadpostgresql-08e12b89d5e094315f2b5d238916b2f56ad8ad7a.tar.gz
postgresql-08e12b89d5e094315f2b5d238916b2f56ad8ad7a.zip
Back-patch fixes for problems with VACUUM destroying t_ctid chains too soon,
and with insufficient paranoia in code that follows t_ctid links. This patch covers the 8.0 branch.
Diffstat (limited to 'src/backend/commands/async.c')
-rw-r--r--src/backend/commands/async.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/backend/commands/async.c b/src/backend/commands/async.c
index e93d9b71163..7981dbeb805 100644
--- a/src/backend/commands/async.c
+++ b/src/backend/commands/async.c
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/commands/async.c,v 1.118 2004/12/31 21:59:41 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/commands/async.c,v 1.118.4.1 2005/08/25 19:44:56 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -520,8 +520,9 @@ AtCommit_Notify(void)
}
else if (listener->notification == 0)
{
- ItemPointerData ctid;
int result;
+ ItemPointerData update_ctid;
+ TransactionId update_xmax;
rTuple = heap_modifytuple(lTuple, lRel,
value, nulls, repl);
@@ -543,7 +544,7 @@ AtCommit_Notify(void)
* heap_update calls.
*/
result = heap_update(lRel, &lTuple->t_self, rTuple,
- &ctid,
+ &update_ctid, &update_xmax,
GetCurrentCommandId(), InvalidSnapshot,
false /* no wait for commit */ );
switch (result)