| From: | Greg Stark <stark(at)mit(dot)edu> |
|---|---|
| To: | Peter Geoghegan <pg(at)heroku(dot)com> |
| Cc: | Robert Haas <robertmhaas(at)gmail(dot)com>, Kevin Grittner <kgrittn(at)ymail(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, Simon Riggs <simon(at)2ndquadrant(dot)com>, Andres Freund <andres(at)2ndquadrant(dot)com> |
| Subject: | Re: UPSERT wiki page, and SQL MERGE syntax |
| Date: | 2014-10-19 21:52:17 |
| Message-ID: | CAM-w4HO7hMDXfVxE2tru0Ob+NN9JvEbRPnrZo1WBH9WKg9S+-Q@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Thu, Oct 16, 2014 at 8:00 PM, Peter Geoghegan <pg(at)heroku(dot)com> wrote:
> Basically, it's difficult to make this work for technical reasons
> precisely because what I have here isn't join-like. Can I easily
> disallow "OLD.*" in a RETURNING clause (recall that we only project
> inserted tuples, as always)? Even if you think that's okay, I'd rather
> give an error message indicating that that makes no sense, which is
> what happens right now.
Well OLD and NEW are also not joins yet we expose them this way. It
always seemed like a hack to me but better one hack than two different
inconsistent hacks, no?
Independent of all that though. CONFLICTING() isn't clear to me --
conflicting is a relative property of two or more objects which are
both (or all) conflicting with each other. Which one does
"CONFLICTING" refer to here?
--
greg
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Greg Stark | 2014-10-19 22:24:51 | Re: Yet another abort-early plan disaster on 9.3 |
| Previous Message | Marko Tiikkaja | 2014-10-19 21:27:18 | Re: pgcrypto: PGP signatures |