postgresql/src/tools
Noah Misch 4eac5a1fa7 For inplace update, send nontransactional invalidations.
The inplace update survives ROLLBACK.  The inval didn't, so another
backend's DDL could then update the row without incorporating the
inplace update.  In the test this fixes, a mix of CREATE INDEX and ALTER
TABLE resulted in a table with an index, yet relhasindex=f.  That is a
source of index corruption.  Back-patch to v12 (all supported versions).
The back branch versions don't change WAL, because those branches just
added end-of-recovery SIResetAll().  All branches change the ABI of
extern function PrepareToInvalidateCacheTuple().  No PGXN extension
calls that, and there's no apparent use case in extensions.

Reviewed by Nitin Motiani and (in earlier versions) Andres Freund.

Discussion: https://postgr.es/m/20240523000548.58.nmisch@google.com
2024-10-25 06:51:07 -07:00
..
ci ci: Upgrade MacPorts version to 2.10.1. 2024-08-19 11:48:49 +12:00
editors Make Emacs perl-mode indent more like perltidy. 2019-01-13 11:32:31 -08:00
ifaddrs Update copyright for 2022 2022-01-07 19:04:57 -05:00
msvc Only define NO_THREAD_SAFE_LOCALE for MSVC plperl when required 2024-09-14 09:17:51 -04:00
perlcheck Fix pgperlsyncheck following SSL TAP test refactoring 2022-04-10 09:19:21 -04:00
pginclude Add missing include guard to win32ntdll.h. 2022-01-12 10:19:00 +13:00
pgindent For inplace update, send nontransactional invalidations. 2024-10-25 06:51:07 -07:00
add_commit_links.pl Improve Perl script which adds commit links to release notes 2024-09-19 08:45:32 -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 2022 2022-01-07 19:04:57 -05:00
codelines Fix remaining stray references to CVS. 2010-09-22 19:51:39 -04:00
copyright.pl Avoid re-writing files unnecessarily in src/tools/copyright.pl. 2022-04-11 11:20:20 -04: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 2022 2022-01-07 19:04:57 -05:00
gen_keywordlist.pl Update copyright for 2022 2022-01-07 19:04:57 -05:00
git-external-diff Preserve information on use of git-external-diff 2018-05-24 23:45:31 +09:30
git_changelog Update copyright for 2022 2022-01-07 19:04:57 -05:00
make_ctags Fix make_etags breakage on certain platforms. 2023-06-14 11:11:18 +09:00
make_etags Improve missing-program error handling in make_ctags and make_etags. 2019-01-13 13:33:50 -05:00
make_mkid Add another pgdefine path check, and a cvs-git change. 2011-08-26 21:52:35 -04:00
mark_pgdllimport.pl Pre-beta mechanical code beautification. 2022-05-12 15:17:30 -04:00
PerfectHash.pm Pre-beta mechanical code beautification. 2022-05-12 15:17:30 -04:00
pgtest pgtest: run clean, build, and check stages separately 2018-07-28 15:34:06 -04:00
RELEASE_CHANGES scripts: add Perl script to add links to release notes 2024-09-16 13:26:37 -04:00
testint128.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
valgrind.supp pgstat: store statistics in shared memory. 2022-04-06 21:29:46 -07:00
version_stamp.pl Update copyright for 2022 2022-01-07 19:04:57 -05:00
win32tzlist.pl Update copyright for 2022 2022-01-07 19:04:57 -05:00