From: Tom Lane Date: Tue, 16 Dec 2008 16:26:08 +0000 (+0000) Subject: Make heap_update() set newtup->t_tableOid correctly, for consistency with X-Git-Tag: recoveryinfrav9~195 X-Git-Url: http://waps.l3s.uni-hannover.de/gitweb/?a=commitdiff_plain;h=b546aef49abe4a25683b3c99ffe48f4a12d002b1;p=users%2Fsimon%2Fpostgres.git Make heap_update() set newtup->t_tableOid correctly, for consistency with the other major heapam.c functions. The only known consequence of this omission is that UPDATE RETURNING failed to return the correct value for "tableoid", as per report from KaiGai Kohei. Back-patch to 8.2. Arguably it's wrong all the way back; but without evidence of visible breakage before RETURNING was added, I'll desist from patching the older branches. --- diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c index 61b562d59c..610254bbc2 100644 --- a/src/backend/access/heap/heapam.c +++ b/src/backend/access/heap/heapam.c @@ -2604,6 +2604,7 @@ l2: HeapTupleHeaderSetXmin(newtup->t_data, xid); HeapTupleHeaderSetCmin(newtup->t_data, cid); HeapTupleHeaderSetXmax(newtup->t_data, 0); /* for cleanliness */ + newtup->t_tableOid = RelationGetRelid(relation); /* * Replace cid with a combo cid if necessary. Note that we already put