Re: Speed dblink using alternate libpq tuple storage
От | Marko Kreen |
---|---|
Тема | Re: Speed dblink using alternate libpq tuple storage |
Дата | |
Msg-id | 20120405163004.GA27513@gmail.com обсуждение исходный текст |
Ответ на | Re: Speed dblink using alternate libpq tuple storage (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Speed dblink using alternate libpq tuple storage
|
Список | pgsql-hackers |
On Wed, Apr 04, 2012 at 06:41:00PM -0400, Tom Lane wrote: > Marko Kreen <markokr@gmail.com> writes: > > On Wed, Apr 4, 2012 at 10:17 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > >> Given the lack of consensus around the suspension API, maybe the best > >> way to get the underlying libpq patch to a committable state is to take > >> it out --- that is, remove the "return zero" option for row processors. > > > Agreed. > > Done that way. Minor cleanups: * Change callback return value to be 'bool': 0 is error. Currently the accepted return codes are 1 and -1, which is weird. If we happen to have the 'early-exit' logic in the future, it should not work via callback return code. So keeping the 0 in reserve is unnecessary. * Support exceptions in multi-statement PQexec() by storing finished result under PGconn temporarily. Without doing it, the result can leak if callback longjmps while processing next result. * Add <caution> to docs for permanently keeping custom callback. This API fragility is also reason why early-exit (if it appears) should not work via callback - instead it should give safer API. -- marko
Вложения
В списке pgsql-hackers по дате отправления: