Re: Writeable CTEs

From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Marko Tiikkaja <marko(dot)tiikkaja(at)cs(dot)helsinki(dot)fi>
Cc: Greg Stark <gsstark(at)mit(dot)edu>, PostgreSQL development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Writeable CTEs
Date: 2010-01-05 21:20:52
Message-ID: 4B43AD34.5060101@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 1/5/10 9:45 AM, Marko Tiikkaja wrote:
> On 2010-01-05 19:21 +0200, Greg Stark wrote:
>> with t as (delete from foo returning *)
>> select * from t where x=?
>>
>> applications will almost certainly expect the number to match the
>> actual number of rows returned and may well misbehave if they don't.
>
> I probably wasn't clear about the actual problem in the original post.
> The problem only affects INSERT, UDPATE and DELETE where you are
> actually counting affected rows (i.e. PQcmdTuples(), not PQntuples()) so
> the this example would work as expected.

I don't think there is an "as expected" for this situation; people won't
know what to expect. So what do we think is resonable? The current
behavior, which reports the total count of rows expected, works for me.

--Josh Berkus

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Kevin Grittner 2010-01-05 21:24:39 Re: true serializability and predicate locking
Previous Message Peter Eisentraut 2010-01-05 21:13:56 Re: Proposal: XML helper functions