Re: libpq pipelineing - Mailing list pgsql-general

From Samuel Williams
Subject Re: libpq pipelineing
Date
Msg-id CAHkN8V_dQ-_GmL3tCKfzAQW1=a10YV7sMyD7y6bsYussbZ-RWQ@mail.gmail.com
Whole thread Raw
In response to libpq pipelineing  (Samuel Williams <space.ship.traveller@gmail.com>)
Responses Re: libpq pipelineing
List pgsql-general
Tom, I'm implementing a small abstraction layer for event-driven
result streaming on PostgreSQL and MariaDB for Ruby, and I'll endeavor
to report back with some numbers once I have enough of it working to
benchmark something meaningful.

Thanks for your patience and help.

Kind regards,
Samuel

On Tue, 30 Jun 2020 at 02:06, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> Samuel Williams <space.ship.traveller@gmail.com> writes:
> > Those methods don't seem to have an equivalent in libpq - you can use
> > PQgetResult but it buffers all the rows. Using single row mode results
> > in many results for each query (seems like a big overhead).
>
> Have you got any actual evidence for that?  Sure, the overhead is
> more than zero, but does it mean anything in comparison to the other
> costs of data transmission?
>
> > Maybe the statement about efficiency is incorrect, but it would be
> > nice if you could incrementally stream a single result set more
> > easily.
>
> More easily than what?  If we did not construct a PGresult then we would
> need some other abstraction for access to the returned row, dealing with
> error cases, etc etc.  That would mean a lot of very duplicative API code
> in libpq, and a painful bunch of adjustments in client code.
>
>                         regards, tom lane



pgsql-general by date:

Previous
From: David Gauthier
Date:
Subject: Can't seem to mix an inner and outer join in a query and get it to work right.
Next
From: "David G. Johnston"
Date:
Subject: Re: Can't seem to mix an inner and outer join in a query and get it to work right.