postgresql/src/tools
Robert Haas 2f17844104 Allow UPDATE to move rows between partitions.
When an UPDATE causes a row to no longer match the partition
constraint, try to move it to a different partition where it does
match the partition constraint.  In essence, the UPDATE is split into
a DELETE from the old partition and an INSERT into the new one.  This
can lead to surprising behavior in concurrency scenarios because
EvalPlanQual rechecks won't work as they normally did; the known
problems are documented.  (There is a pending patch to improve the
situation further, but it needs more review.)

Amit Khandekar, reviewed and tested by Amit Langote, David Rowley,
Rajkumar Raghuwanshi, Dilip Kumar, Amul Sul, Thomas Munro, Álvaro
Herrera, Amit Kapila, and me.  A few final revisions by me.

Discussion: http://postgr.es/m/CAJ3gD9do9o2ccQ7j7+tSgiE1REY65XRiMb=yJO3u3QhyP8EEPQ@mail.gmail.com
2018-01-19 15:33:06 -05:00
..
editors emacs: Set indent-tabs-mode in perl-mode 2015-04-12 23:53:23 -04:00
findoidjoins Update copyright for 2018 2018-01-02 23:30:12 -05:00
ifaddrs Update copyright for 2018 2018-01-02 23:30:12 -05:00
make_diff Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
msvc Fix use of config-specific libraries for Windows OpenSSL 2018-01-03 15:36:54 -05:00
pginclude Clean up Perl code according to perlcritic 2017-03-27 08:18:22 -04:00
pgindent Allow UPDATE to move rows between partitions. 2018-01-19 15:33:06 -05:00
FAQ2txt Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
RELEASE_CHANGES Update RELEASE_CHANGES' example of branch name format. 2017-08-06 23:26:09 -04:00
ccsym tools/ccsym: update for modern versions of gcc 2015-01-20 13:02:58 -05:00
check_bison_recursion.pl Update copyright for 2018 2018-01-02 23:30:12 -05:00
codelines Fix remaining stray references to CVS. 2010-09-22 19:51:39 -04:00
copyright.pl Update copyright for 2018 2018-01-02 23:30:12 -05:00
find_badmacros Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
find_static Fix omission of -X (--no-psqlrc) in some psql invocations. 2015-12-28 11:46:43 -05:00
find_typedef Refer to OS X as "macOS", except for the port name which is still "darwin". 2016-09-25 15:40:57 -04:00
fix-old-flex-code.pl Update copyright for 2018 2018-01-02 23:30:12 -05:00
git-external-diff Add comment to tools/git-external-diff. 2011-03-11 05:06:31 -05:00
git_changelog Adjust git_changelog for new-style release tags. 2017-10-04 00:45:15 -04:00
make_ctags Mention original ctags option name. 2012-02-24 16:19:18 -05:00
make_etags Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
make_mkid Add another pgdefine path check, and a cvs-git change. 2011-08-26 21:52:35 -04:00
pgtest pgtest: allow passing parameters, e.g. -s/--silent 2013-08-05 19:59:52 -04:00
testint128.c Update copyright for 2018 2018-01-02 23:30:12 -05:00
valgrind.supp Copyedit comments and documentation. 2016-04-01 21:53:10 -04:00
version_stamp.pl Update copyright for 2018 2018-01-02 23:30:12 -05:00
win32tzlist.pl Update copyright for 2018 2018-01-02 23:30:12 -05:00