BUG #14099: Altering temporary sequence in session has no effect
От | imraan@techie.com |
---|---|
Тема | BUG #14099: Altering temporary sequence in session has no effect |
Дата | |
Msg-id | 20160418171347.22920.22798@wrigleys.postgresql.org обсуждение исходный текст |
Ответы |
Re: BUG #14099: Altering temporary sequence in session has no effect
|
Список | pgsql-bugs |
The following bug has been logged on the website: Bug reference: 14099 Logged by: Imraan Parker Email address: imraan@techie.com PostgreSQL version: 9.5.2 Operating system: Linux Description: Altering a temporary sequence using ALTER SEQUENCE within a session has no effect. I am trying to set the starting value of the sequence. All this happens within a PL/PGSQL function as seen below. CREATE OR REPLACE FUNCTION _test_seq() RETURNS integer AS $BODY$ BEGIN BEGIN CREATE TEMP SEQUENCE tt_seq; EXCEPTION WHEN OTHERS THEN ALTER SEQUENCE tt_seq START 1; --PERFORM setval('tt_seq', 1); END; PERFORM nextval('tt_seq'); PERFORM nextval('tt_seq'); PERFORM nextval('tt_seq'); RETURN currval('tt_seq'); END; $BODY$ LANGUAGE plpgsql VOLATILE; SELECT * FROM _test_seq(); Running the function increments the sequence but never sets it back to 1. If you uncomment the setval(), then it works. The ALTER SEQUENCE works on 9.1 and 9.3. I do not have a 9.4 instance to test on so I cannot be sure if the problem is there too.
В списке pgsql-bugs по дате отправления: