Skip site navigation (1) Skip section navigation (2)

Re: INS/UPD/DEL RETURNING for 8.2

From: "Jonah H(dot) Harris" <jonah(dot)harris(at)gmail(dot)com>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "Neil Conway" <neilc(at)samurai(dot)com>, pgsql-patches(at)postgresql(dot)org
Subject: Re: INS/UPD/DEL RETURNING for 8.2
Date: 2006-03-03 01:47:03
Message-ID: 36e682920603021747l3fea5d9ctf1012b80b6a4bae1@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-patches
On 3/2/06, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> This might tie into something that was bothering me about Jonah's
> first-cut patch, which was that he was introducing special cases into
> places where it didn't seem real appropriate (like printtup.c).  I
> wonder if we should rejigger the representation of Query so that a
> FOO-RETURNING command actually *is* a SELECT in some sense, so that
> there's no need for special cases.


I was thinking along the same lines.  This is Omar's patch updated to
8.2but as I get to looking through it, there are a couple things that
could be
cleaned up.  I paced around a bit today trying to theorize how this could be
done without a lot of changes and retaining the speed increase gained by not
performing two separate operations.

I'm a bit fuzzy about how this would work exactly --- you still need to
> keep track of two targetlists it seems --- but it's worth thinking
> about.  I've had a bee in my bonnet for literally years about the fact
> that INSERT/SELECT really needs two levels of targetlist, as does UNION.
> Maybe if we thought a little bit larger we could clean up all of that
> messiness at one stroke.


I'm definitely open to looking into it.  Any suggestions are always
welcome.


--
Jonah H. Harris, Database Internals Architect
EnterpriseDB Corporation
732.331.1324

In response to

pgsql-patches by date

Next:From: Jonah H. HarrisDate: 2006-03-03 01:48:23
Subject: Re: INS/UPD/DEL RETURNING for 8.2
Previous:From: Tom LaneDate: 2006-03-03 01:33:42
Subject: Re: INS/UPD/DEL RETURNING for 8.2

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group