This is my test case (all in one session): CREATE TABLE foo ( key int PRIMARY KEY, value int );
INSERT INTO foo VALUES (1, 1); BEGIN; DECLARE foo CURSOR FOR SELECT * FROM foo FOR UPDATE; UPDATE foo SET value = 2 WHERE key = 1; UPDATE foo SET value = 3 WHERE key = 1; FETCH 1 FROM foo; COMMIT; I expected the FETCH to return one row, with the latest data, i.e. (1, 3), but instead it's returning empty. If instead I run both UPDATEs in another session, then I do get alvherre=# FETCH 1 FROM foo; key | value -----+------- 1 | 3 (1 fila) Is this intended? -- Álvaro Herrera <alvhe...@alvh.no-ip.org> -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers