postgresql/src
Andres Freund 4800f16a7a Perform a lot more sanity checks when freezing tuples.
The previous commit has shown that the sanity checks around freezing
aren't strong enough. Strengthening them seems especially important
because the existance of the bug has caused corruption that we don't
want to make even worse during future vacuum cycles.

The errors are emitted with ereport rather than elog, despite being
"should never happen" messages, so a proper error code is emitted. To
avoid superflous translations, mark messages as internal.

Author: Andres Freund and Alvaro Herrera
Reviewed-By: Alvaro Herrera, Michael Paquier
Discussion: https://postgr.es/m/20171102112019.33wb7g5wp4zpjelu@alap3.anarazel.de
Backpatch: 9.3-
2017-12-14 18:20:48 -08:00
..
backend Perform a lot more sanity checks when freezing tuples. 2017-12-14 18:20:48 -08:00
bin Translation updates 2017-11-05 17:05:18 -05:00
common Unlink static libraries before rebuilding them. 2015-03-01 13:06:39 -05:00
include Perform a lot more sanity checks when freezing tuples. 2017-12-14 18:20:48 -08:00
interfaces Add post-2010 ecpg tests to checktcp. 2017-11-11 14:41:58 -08:00
makefiles Always use -fPIC, not -fpic, when building shared libraries with gcc. 2017-06-01 13:32:56 -04:00
pl Support linking with MinGW-built Perl. 2017-11-23 20:32:01 -08:00
port Stamp 9.3.20. 2017-11-06 17:15:48 -05:00
template AIX: Test the -qlonglong option before use. 2015-07-17 03:02:03 -04:00
test Fix pruning of locked and updated tuples. 2017-12-14 18:20:48 -08:00
timezone Replace raw timezone source data with IANA's new compact format. 2017-11-25 15:30:48 -05:00
tools MSVC 2012+: Permit linking to 32-bit, MinGW-built libraries. 2017-12-09 00:58:59 -08:00
tutorial Remove tabs after spaces in C comments 2014-05-06 11:26:28 -04:00
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:04 +02:00
bcc32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
DEVELOPERS Replace a couple of references to files that no longer exist in the source 2009-05-04 08:08:47 +00:00
Makefile Create libpgcommon, and move pg_malloc et al to it 2013-02-12 11:21:05 -03:00
Makefile.global.in PL/Perl portability fix: absorb relevant -D switches from Perl. 2017-07-31 12:38:35 -04:00
Makefile.shlib Fix typos in comments. 2017-02-06 11:34:28 +02:00
nls-global.mk nls-global.mk: search build dir for source files, too 2016-06-07 18:55:18 -04:00
win32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00