Re: currval and DISCARD ALL
От | Nigel Heron |
---|---|
Тема | Re: currval and DISCARD ALL |
Дата | |
Msg-id | 516D6940.7010004@psycode.com обсуждение исходный текст |
Ответ на | Re: currval and DISCARD ALL (Adrian Klaver <adrian.klaver@gmail.com>) |
Ответы |
Re: currval and DISCARD ALL
|
Список | pgsql-general |
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.
В списке pgsql-general по дате отправления: