Re: idea to have driver return immediately after a query

Поиск
Список
Период
Сортировка
От Oliver Jowett
Тема Re: idea to have driver return immediately after a query
Дата
Msg-id AANLkTimvrQSU6ER+Yx1=Nbu=2LQAfAKy1ABTZB7b2Xj-@mail.gmail.com
обсуждение исходный текст
Ответ на idea to have driver return immediately after a query  (Dave Cramer <pg@fastcrypt.com>)
Ответы Re: idea to have driver return immediately after a query  (Maciek Sakrejda <msakrejda@truviso.com>)
Re: idea to have driver return immediately after a query  (Dave Cramer <pg@fastcrypt.com>)
Список pgsql-jdbc
On 25 March 2011 13:40, Dave Cramer <pg@fastcrypt.com> wrote:
> It was suggested by Robert Haas that it would be possible to return
> from a query immediately instead of reading the entire result set.
> Instead of reading it we just let the O/S buffer the results until we
> get around to reading it. Before I go to the trouble of prototyping
> this can anyone see a reason why this wouldn't work ?

What happens if the app then wants to run another query before reading
the resultset? One common case is going to be run query - inspect
resultset metadata - driver has to run internal queries to return that
metadata. I'm a little worried about error handling too.

For queries in a transaction, it might make sense to implement this
via portals, much as done for fetchsize (i.e. always ask for only 1
row initially, and read that immediately; then reading the resultset
beyond the first row triggers a fetch of the rest of the resultset as
if you had set a large fetchsize). Then you don't have to worry about
tying up the connection with an unread resultset. Though this means
you have to use a named statement and lose the unnamed statement
planning tweaks; and you will have to wait for the query to produce at
least one row before returning.

There are various things that the wire protocol / backend could do
better here - a portal equivalent to DECLARE CURSOR WITH HOLD, and
some way to say "defer planning on this named statement until Bind
please", would both be useful.

Oliver

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

Предыдущее
От: Dave Cramer
Дата:
Сообщение: idea to have driver return immediately after a query
Следующее
От: dmp
Дата:
Сообщение: Re: JDBC gripe list