
 Hi,

I a little study on DejaNews a large discussion (October 1999) about new 
fmgr and functions which return tuples. (IMHO 'function' is not good name 
for this, better is 'procedure'.)

A question, is this feature planned for 7.1 and work on this anyone?

IMHO it not needs change current fmgr code, it needs only RTE code (parser
and transformStmt) and executor code change (executor call myfunc() and this 
function create temp table and this table use executor as standart table.)  
(..it is really simplification :-)

Or is other idea?

							Karel

/* ----------------
 * Karel Zak  *  zakkr@zf.jcu.cz  *  http://home.zf.jcu.cz/~zakkr/
 *           C, PostgreSQL, PHP, WWW, http://docs.linux.cz
 * ----------------
 */


Fri, 31 Mar 2000 17:33:29 +0200 (CEST)
Karel Zak <zakkr@zf.jcu.cz>
procedure returns a tuple
Karel Zak wrote:

> I a little study on DejaNews a large discussion (October 1999) about new
> fmgr and functions which return tuples. (IMHO 'function' is not good name
> for this, better is 'procedure'.)
>
> A question, is this feature planned for 7.1 and work on this anyone?
>
> IMHO it not needs change current fmgr code, it needs only RTE code (parser
> and transformStmt) and executor code change (executor call myfunc() and this
> function create temp table and this table use executor as standart table.)
> (..it is really simplification :-)
>
> Or is other idea?

    Right - simplified.

    Here  again, the proposed overhaul of the parse-/querytree is
    the reason why we don't want to tackle  this  issue  now.  At
    that  time,  any  relation as well as a 'procedure' (function
    returning a tuple set) will become a "tuple-source". A  tuple
    source  is  mainly  an abstract node, describing the shape of
    tuples it returns, hiding how it produces them to the caller.

    This  way,  there  is  no  fundamental  difference  between a
    relation, a procedure or an external database link any  more.

    Up  to  now  we only have a vague idea in mind. And we're not
    sure if we'll do this huge changes in the main CVS trunk or a
    separate  branch.   Neither  have we decided when to start on
    it, because we need a couple of key developers  at  the  same
    time  to  ensure reasonable progress in that project (none of
    us can do it alone).

    After 7.0 is out, I'll try to collect all the design  issues,
    break up the entire package into smaller chunks and develop a
    project plan for it.


Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#========================================= wieck@debis.com (Jan Wieck) #



Mon, 3 Apr 2000 23:07:53 +0200 (CEST)
wieck@debis.com (Jan Wieck)
Re: procedure returns a tuple

On Mon, 3 Apr 2000, Jan Wieck wrote:

> Karel Zak wrote:
> 
> > I a little study on DejaNews a large discussion (October 1999) about new
> > fmgr and functions which return tuples. (IMHO 'function' is not good name
> > for this, better is 'procedure'.)

Jan, thanks for answer, I thought that I again ask about bad matter or 
I send a stupid question :-) 

>     Here  again, the proposed overhaul of the parse-/querytree is
>     the reason why we don't want to tackle  this  issue  now.  At
>     that  time,  any  relation as well as a 'procedure' (function
>     returning a tuple set) will become a "tuple-source". A  tuple
>     source  is  mainly  an abstract node, describing the shape of
>     tuples it returns, hiding how it produces them to the caller.
> 
>     This  way,  there  is  no  fundamental  difference  between a
>     relation, a procedure or an external database link any  more.

Last weekend I a little explore current sources for this and the
current postgresql very "vegetates" on a relation and a example 
transform statement code very depend on relation structs. Yes,
Berkeley's code design for this is not modular and abstract. 	

>     Up  to  now  we only have a vague idea in mind. And we're not
>     sure if we'll do this huge changes in the main CVS trunk or a
>     separate  branch.   Neither  have we decided when to start on
>     it, because we need a couple of key developers  at  the  same
>     time  to  ensure reasonable progress in that project (none of
>     us can do it alone).
> 
>     After 7.0 is out, I'll try to collect all the design  issues,
>     break up the entire package into smaller chunks and develop a
>     project plan for it.

Well.  

						Karel 


Tue, 4 Apr 2000 14:27:16 +0200 (CEST)
Karel Zak <zakkr@zf.jcu.cz>
Re: procedure returns a tuple