I found a strange behavior on the recent v8.4devel with/without SE-PostgreSQL patch set. Can you reproduce the following behavior?
When I use UPDATE statement with RETURNING clause which contains references to "tableoid" system column, it returns InvalidOid. (The correct valus is 16384 in this case.) However, RETURNING clause with INSERT/DELETE statement works well. ---------- postgres=# CREATE TABLE t1 (a int, b text); CREATE TABLE postgres=# INSERT INTO t1 VALUES (1, 'aaa'), (2, 'bbb'), (3, 'ccc'); INSERT 0 3 postgres=# SELECT tableoid, * FROM t1; tableoid | a | b ----------+---+----- 16384 | 1 | aaa 16384 | 2 | bbb 16384 | 3 | ccc (3 rows) postgres=# BEGIN; BEGIN postgres=# UPDATE t1 SET b = 'abc' RETURNING tableoid, *; tableoid | a | b ----------+---+----- 0 | 1 | abc 0 | 2 | abc 0 | 3 | abc (3 rows) UPDATE 3 postgres=# ABORT; BEGIN; ROLLBACK BEGIN postgres=# INSERT INTO t1 VALUES (4, 'ddd') RETURNING tableoid, *; tableoid | a | b ----------+---+----- 16384 | 4 | ddd (1 row) INSERT 0 1 postgres=# ABORT; BEGIN; ROLLBACK BEGIN postgres=# DELETE FROM t1 RETURNING tableoid, *; tableoid | a | b ----------+---+----- 16384 | 1 | aaa 16384 | 2 | bbb 16384 | 3 | ccc (3 rows) DELETE 3 -- OSS Platform Development Division, NEC KaiGai Kohei <kai...@ak.jp.nec.com> -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers