pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Adriaan van Os <postgres@microbizz.nl>
To: pgsql-interfaces@postgresql.org
Subject: Re: Progress of asynchronous queries
Date: Fri, 15 Sep 2006 14:56:33 +0200
Message-ID: <450AA301.9020408@microbizz.nl> (raw)
In-Reply-To: <450A6A87.2030808@microbizz.nl>
References: <450A6A87.2030808@microbizz.nl>

Jeroen T. Vermeulen wrote:

> Adriaan van Os wrote:
>> I couldn't find anything in the libpq interfaces that identifies the
>> current progress of an
>> asynchronous query as a percentage of the estimated total query time. So,
>> unless I missed
>> something, I would like to file this as a feature request.
>>
>> The idea behind this, of course, is to show a progress bar in the user
>> interface of the client
>> application as soon as the query takes longer than say 1 second.
> 
> One way to do this would be to use a cursor, and only receive batches of
> (say) a hundred or a thousand rows at a time.  In that case you might not
> even want to bother with asynchronous execution at all.
> 
> It may take some extra work for your program to handle its data in chunks.
>  Then again, for many programs it's not necessary to hold all of a result
> set in memory at the same time.  In that case you may see reduced memory
> usage if you request one chunk of data through a cursor, process it, then
> request the next batch.
> 
> Doing that will take longer overall but give you faster initial response
> time.  If you want to keep the overall time low, and you do a lot of
> processing per batch, you may still want to request your batches
> asynchronously just so your program can process one batch of data while
> the server is retrieving the next.

Thanks for your reply and the idea to process data in chunks. Still, I feel that a workaround for 
some situations (that may not work in others) is not in general a good replacement for a 
fundamental feature, as keeping the user informed is one of principles of User Interface design 
<http://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/XHIGHIDesign/chap...;.

Besides, when more than one user is connected, multiple SQL commands may behave different than a 
single SQL command (<http://www.postgresql.org/docs/8.1/static/transaction-iso.html;)

Regards,

Adriaan van Os



view thread (9+ messages)  latest in thread

Message-ID: <450AA301.9020408@microbizz.nl>
Permalink:  ../450AA301.9020408@microbizz.nl/
Also on:    postgresql.org/message-id/450AA301.9020408@microbizz.nl

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-interfaces@postgresql.org
  Cc: postgres@microbizz.nl
  Subject: Re: Progress of asynchronous queries
  In-Reply-To: <450AA301.9020408@microbizz.nl>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox