
Can anyone tell me what the concept of a "group" is in
backend/libpq/portal.c? There are functions like PQntuplesGroup,
PQfnumberGroup, PQfsizeGroup, PQftypeGroup etc etc.

Mon, 03 Jul 2000 23:10:25 +1000
Chris Bitmead <chris@bitmead.com>
Backend Question
Chris Bitmead <chris@bitmead.com> writes:
> Can anyone tell me what the concept of a "group" is in
> backend/libpq/portal.c? There are functions like PQntuplesGroup,
> PQfnumberGroup, PQfsizeGroup, PQftypeGroup etc etc.

Once upon a time it probably supported something like the ability to
merge tuples of different types into a SELECT result.  It does not
now: a little scanning shows there is no way to get no_groups above 1
in the current logic.

You should realize, however, that all that backend-PQexec code is dead
code and has been for a long time.  It's unlikely that it works at all
any more, considering all the changes that have gone on while it sits
untested on the sidelines.  I proposed ripping it out a few months ago,
and no one objected ... but I haven't got round to it yet.

			regards, tom lane

Mon, 03 Jul 2000 10:31:49 -0400
Tom Lane <tgl@sss.pgh.pa.us>
Re: Backend Question 
Tom Lane wrote:
> 
> Chris Bitmead <chris@bitmead.com> writes:
> > Can anyone tell me what the concept of a "group" is in
> > backend/libpq/portal.c? There are functions like PQntuplesGroup,
> > PQfnumberGroup, PQfsizeGroup, PQftypeGroup etc etc.
> 
> Once upon a time it probably supported something like the ability to
> merge tuples of different types into a SELECT result.  It does not
> now: a little scanning shows there is no way to get no_groups above 1
> in the current logic.
> 
> You should realize, however, that all that backend-PQexec code is dead
> code and has been for a long time.  It's unlikely that it works at all
> any more, considering all the changes that have gone on while it sits
> untested on the sidelines.  I proposed ripping it out a few months ago,
> and no one objected ... but I haven't got round to it yet.

Why is it dead code? Why is it no longer necessary?

Tue, 04 Jul 2000 00:38:38 +1000
Chris Bitmead <chris@bitmead.com>
Re: Backend Question
Chris Bitmead <chris@bitmead.com> writes:
>> You should realize, however, that all that backend-PQexec code is dead
>> code and has been for a long time.

> Why is it dead code? Why is it no longer necessary?

It's dead code because it's not called from anywhere.

Once upon a time it was intended to be called by dynamically-loaded
C functions, but the SPI interface superseded it a long time ago.

The only reason for not ripping it out is the faint possibility that
somewhere out there is someone with hoary old C-function code that
still does queries via the backend-PQexec interface instead of SPI.
But considering that backend-PQexec has been undocumented at least
since Berkeley days, I rather doubt it.

			regards, tom lane

Mon, 03 Jul 2000 10:47:07 -0400
Tom Lane <tgl@sss.pgh.pa.us>
Re: Backend Question 
Tom Lane wrote:

> You should realize, however, that all that backend-PQexec code is dead
> code and has been for a long time.  It's unlikely that it works at all
> any more, considering all the changes that have gone on while it sits
> untested on the sidelines.  I proposed ripping it out a few months ago,
> and no one objected ... but I haven't got round to it yet.

Oh does it allow you to execute queries from within the backend? Sounds
like a good thing to resurrect at some stage.

Tue, 04 Jul 2000 00:47:49 +1000
Chris Bitmead <chris@bitmead.com>
Re: Backend Question