On 04/15/2013 05:57 PM, Adrian Klaver wrote:
On 04/15/2013 02:42 PM, Nigel Heron wrote:
Hi,
is there a way to clear the session state of sequence values fetched by
currval(regclass)? "DISCARD ALL" doesn't seem to do it.
<snip>
Might want to take a look at:
http://www.depesz.com/2012/12/02/what-is-the-point-of-bouncing/
for some hints on dealing with sequences and pgBouncer.
thanks, I read it (his blogs are always interesting!). I'm not disputing
that calling currval() at the wrong time is a bad idea.
I'm just wondering why DISCARD ALL clears everything but this?
from the docs:
"DISCARD ALL resets a session to its original state, discarding
temporary resources and resetting session-local configuration changes."
.. but at the beginning of a session currval(foo) would return an error,
whereas calling nexval(foo); DISCARD ALL; currval(foo); does not return
an error.. clearly something isn't getting reset to the original state.
If you create a TEMP sequence, then DISCARD ALL does clear the state,
probably because the underlying table disappears.
-nigel.
--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general