postgresql/src
Alvaro Herrera 37a856567c Fix BRIN summarization concurrent with extension
If a process is extending a table concurrently with some BRIN
summarization process, it is possible for the latter to miss pages added
by the former because the number of pages is computed ahead of time.

Fix by determining a fresh relation size after inserting the placeholder
tuple: any process that further extends the table concurrently will
update the placeholder tuple, while previous pages will be processed by
the heap scan.

Reported-by: Tomas Vondra
Reviewed-by: Tom Lane
Author: Álvaro Herrera
Discussion: https://postgr.es/m/083d996a-4a8a-0e13-800a-851dd09ad8cc@2ndquadrant.com
Backpatch-to: 9.5
2017-11-03 17:23:13 +01:00
..
backend Fix BRIN summarization concurrent with extension 2017-11-03 17:23:13 +01:00
bin In client support of v10 features, use standard schema handling. 2017-11-01 19:16:17 -07:00
common Update copyright in recently added files 2017-07-26 18:17:18 -04:00
fe_utils Phase 3 of pgindent updates. 2017-06-21 15:35:54 -04:00
include Revert bogus fixes of HOT-freezing bug 2017-11-02 15:51:05 +01:00
interfaces Improve error message for incorrect number inputs in libecpg. 2017-11-03 12:41:39 +01:00
makefiles Always use -fPIC, not -fpic, when building shared libraries with gcc. 2017-06-01 13:32:55 -04:00
pl Allow parallel query for prepared statements with generic plans. 2017-10-29 20:48:51 +05:30
port Phase 3 of pgindent updates. 2017-06-21 15:35:54 -04:00
template Remove "sco" and "unixware" ports. 2016-10-11 11:26:04 -04:00
test Revert bogus fixes of HOT-freezing bug 2017-11-02 15:51:05 +01:00
timezone Update time zone data files to tzdata release 2017c. 2017-10-23 18:15:42 -04:00
tools Improve gendef.pl diagnostic on failure to open sym file 2017-10-26 10:04:45 -04:00
tutorial Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:04 +02: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 Remove redundant coverage target 2017-02-17 08:56:57 -05:00
Makefile.global.in Be more thorough about cleaning out gcov litter. 2017-08-11 17:39:27 -04:00
Makefile.shlib Remove support for bcc and msvc standalone libpq builds 2017-04-11 15:22:21 +02:00
nls-global.mk nls-global.mk: search build dir for source files, too 2016-06-07 18:55:18 -04:00