Re: Column info without executing query

Поиск
Список
Период
Сортировка
От Martijn van Oosterhout
Тема Re: Column info without executing query
Дата
Msg-id 20060721152641.GE21076@svana.org
обсуждение исходный текст
Ответ на Re: Column info without executing query  (Volkan YAZICI <yazicivo@ttnet.net.tr>)
Список pgsql-general
On Fri, Jul 21, 2006 at 05:47:32PM +0300, Volkan YAZICI wrote:
> > Did you see my comment about get partial result sets from libpq. for
> > asyncronous queries you can run PQftype as soon as you've received and
> > parsed the T record
>
> We can run PQftype() on what, conn->result? (We can't use a PGresult
> will be returned from a PQgetResult() in here; because, AFAIK, after
> a getRowDescriptions(), PQgetResult() still won't return a PGresult
> because of conn->asyncStatus is still PGASYNC_BUSY.) That's why I
> proposed generic methods to give user the conn->result access under
> control.

Well actually, that's exactly what you do. If you set libpq to
non-blocking mode and call PQgetResult() on an async query, it will in
fact give a result set that PQftype() works on.

Note that in this mode some functions sometimes return odd results. For
example, you only know that the query has finished executing when
PQgetResult returns a fatal error. Still, I and others have used this
technique successfully. See my mvcctest program:

http://svana.org/kleptog/pgsql/mvcctest.tar.gz

Hope this helps,
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> From each according to his ability. To each according to his ability to litigate.

Вложения

В списке pgsql-general по дате отправления:

Предыдущее
От: Csaba Nagy
Дата:
Сообщение: Re: Impact of vacuum full...
Следующее
От: Erik Jones
Дата:
Сообщение: Re: Impact of vacuum full...