Re: [HACKERS] MERGE SQL Statement for PG11
Amit Langote <langote_amit_f8@lab.ntt.co.jp>
From: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
To: Pavan Deolasee <pavan.deolasee@gmail.com>,
Simon Riggs <simon@2ndquadrant.com>
Cc: Peter Geoghegan <pg@bowt.ie>, Robert Haas <robertmhaas@gmail.com>,
Tomas Vondra <tomas.vondra@2ndquadrant.com>,
Alvaro Herrera <alvherre@alvh.no-ip.org>,
Andrew Dunstan <andrew.dunstan@2ndquadrant.com>,
Pavan Deolasee <pavan.deolasee@2ndquadrant.com>,
Stephen Frost <sfrost@snowman.net>,
PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2018-03-23T04:30:47Z
Lists: pgsql-hackers
Attachments
- merge-onconflict-rebase-delta.patch (text/plain) patch
- regression.diffs (text/plain)
On 2018/03/23 3:42, Pavan Deolasee wrote: > A slightly improved version attached. Apart from doc cleanup based on > earlier feedback, fixed one assertion failure based on Rahila's report. > This was happening when target relation is referenced in the source > subquery. Fixed that and added a test case to test that situation. > > Rebased on current master. I tried these patches (applied 0002 on top of 0001). When applying 0002, I got some apply errors: The next patch would create the file src/test/isolation/expected/merge-delete.out, which already exists! Assume -R? [n] I managed to apply it by ignoring the errors, but couldn't get make check to pass; attached regressions.diffs if you want to take a look. Btw, is 0001 redundant with the latest patch on ON CONFLICT DO UPDATE thread? Can I apply just 0002 on top of that patch? So, I tried that -- that is, skipped your 0001 and instead applied ON CONFLICT DO UPDATE patch, and then applied your 0002. I had to fix a couple of places to get MERGE working correctly for partitioned tables; attached find a delta patch for the fixes I made, which were needed because I skipped 0001 in favor of the ON CONFLICT DO UPDATE patch. But the regression test failure I mentioned above didn't go away, so it seems to have nothing to do with partitioning. Thanks, Amit
Commits
-
Add support for MERGE SQL command
- 7103ebb7aae8 15.0 landed
-
Add API of sorts for transition table handling in trigger.c
- 3a46a45f6f00 15.0 landed
-
Revert MERGE patch
- 08ea7a2291db 11.0 cited
-
Fix several bugs related to ON CONFLICT's EXCLUDED pseudo relation.
- ad2278379244 9.6.0 cited