Thread: RC2 intermittent errors
Hi all, I'm testing now RC2 against our application and I'm experiencing intermittent errors. I isolated this test: CREATE TABLE users (id_login SERIAL PRIMARY KEY, login TEXT ); CREATE OR REPLACE FUNCTION sp_id_user ( TEXT ) RETURNS INTEGER AS $$ DECLARE a_login ALIAS FOR $1; my_id INTEGER; BEGIN SELECT id_login INTO my_id FROM users WHERE login = a_login; RETURN COALESCE(my_id, -1 ); END; $$ LANGUAGE 'plpgsql' STABLE; CREATE OR REPLACE FUNCTION sp_test ( TEXT ) RETURNS INTEGER AS $$ DECLARE a_login ALIAS FOR $1; my_id INTEGER; BEGIN my_id = sp_id_user( a_login ); RAISE NOTICE 'ID> %', my_id; insert into users (login) values ( a_login ); my_id = sp_id_user( a_login ); RAISE NOTICE 'ID> %', my_id; RETURN 0; END; $$ LANGUAGE 'plpgsql'; select sp_test('test1'); select sp_test('test2'); The call of the two above functions shall show: ID> -1 ID> 1 ID> -1 ID> 2 instead I have: test=# select sp_test('test1'); NOTICE: ID> -1 NOTICE: ID> 1 sp_test --------- 0 (1 row) test=# select sp_test('test2'); NOTICE: ID> -1 NOTICE: ID> -1 sp_test --------- 0 (1 row) some times I get: test=# select sp_test('test1'); NOTICE: ID> -1 NOTICE: ID> -1 sp_test --------- 0 (1 row) test=# select sp_test('test2'); NOTICE: ID> -1 NOTICE: ID> -1 sp_test --------- 0 (1 row) Regards Gaetano Mendola
Gaetano Mendola <mendola@bigfoot.com> writes: > I'm testing now RC2 against our application and I'm experiencing > intermittent errors. I isolated this test: Argh! I put a GetTransactionSnapshot() call into exec_eval_simple_expr, but I forgot CommandCounterIncrement(). Wish I could say it was a copy- and-paste mistake, but it was pure stupidity... regards, tom lane
Tom Lane wrote: > Gaetano Mendola <mendola@bigfoot.com> writes: > > I'm testing now RC2 against our application and I'm experiencing > > intermittent errors. I isolated this test: > > Argh! I put a GetTransactionSnapshot() call into exec_eval_simple_expr, > but I forgot CommandCounterIncrement(). Wish I could say it was a copy- > and-paste mistake, but it was pure stupidity... Can we continue with RC2 or do we need an RC3? -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001+ If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania19073
Bruce Momjian <pgman@candle.pha.pa.us> writes: > Tom Lane wrote: >> Argh! I put a GetTransactionSnapshot() call into exec_eval_simple_expr, >> but I forgot CommandCounterIncrement(). Wish I could say it was a copy- >> and-paste mistake, but it was pure stupidity... > Can we continue with RC2 or do we need an RC3? It's a one-liner change (assuming that my theory is right, which I won't know for a little bit because I had just make distclean'd in order to verify my tree against the RC2 tarball). I don't think we should push an RC3 just for this. Wait a few days and see what else turns up ... regards, tom lane
Tom Lane wrote: > Bruce Momjian <pgman@candle.pha.pa.us> writes: > >>Tom Lane wrote: >> >>>Argh! I put a GetTransactionSnapshot() call into exec_eval_simple_expr, >>>but I forgot CommandCounterIncrement(). Wish I could say it was a copy- >>>and-paste mistake, but it was pure stupidity... > > >>Can we continue with RC2 or do we need an RC3? > > > It's a one-liner change (assuming that my theory is right, which I won't > know for a little bit because I had just make distclean'd in order to > verify my tree against the RC2 tarball). I don't think we should push > an RC3 just for this. Wait a few days and see what else turns up ... > Did you updated the CVS ? Regards Gaetano Mendola