Re: A problem with sequences...
От | Dmitry Tkach |
---|---|
Тема | Re: A problem with sequences... |
Дата | |
Msg-id | 3E569057.6070907@openratings.com обсуждение исходный текст |
Ответ на | Re: A problem with sequences... (Doug McNaught <doug@mcnaught.org>) |
Ответы |
Re: A problem with sequences...
|
Список | pgsql-general |
Doug McNaught wrote: >Dmitry Tkach <dmitry@openratings.com> writes: > > > >>select setval('answer_id_seq', id) from answer order by id desc limit 1; >> >>Now, for some reason this reports a correct value, but what actually >>gets set is wrong! >> >> > >I'm guessing that 'setval' is getting called more than once here. >Your 'LIMIT 1' controls how many rows are returned to the client, but >the server is probably generating more rows internally. So this is >just wrong, and > > You are right ! That's it! It does get called twice. There is even a nice comment in ExecLimit(): * NOTE: when scanning forwards, we must fetch one tuple beyond the * COUNT limit before we can return NULL, else the subplan won't * be properly positioned to start going backwards. Hence test * here is for position > netlimit not position >= netlimit. Whatever that means, that's what was causing my problems... Thanks! Dima
В списке pgsql-general по дате отправления: