postgresql/src/backend
Thomas Munro 7bb3102cea Don't use _mdfd_getseg() in mdsyncfiletag().
_mdfd_getseg() opens all segments up to the requested one.  That
causes problems for mdsyncfiletag(), if mdunlinkfork() has
already unlinked other segment files.  Open the file we want
directly by name instead, if it's not already open.

The consequence of this bug was a rare panic in the checkpointer,
made more likely if you saturated the sync request queue so that
the SYNC_FORGET_REQUEST messages for a given relation were more
likely to be absorbed in separate cycles by the checkpointer.

Back-patch to 12.  Defect in commit 3eb77eba.

Author: Thomas Munro
Reported-by: Justin Pryzby
Discussion: https://postgr.es/m/20191119115759.GI30362%40telsasoft.com
2019-12-14 16:32:03 +13:00
..
access Fix crash when a page was split during GiST index creation. 2019-12-13 23:58:10 +02:00
bootstrap Remove configure --disable-float4-byval 2019-11-21 18:29:21 +01:00
catalog Fix misbehavior with expression indexes on ON COMMIT DELETE ROWS tables. 2019-12-01 13:09:26 -05:00
commands Further adjust EXPLAIN's choices of table alias names. 2019-12-11 17:05:18 -05:00
executor Allow executor startup pruning to prune all child nodes. 2019-12-11 17:05:30 -05:00
foreign Split all OBJS style lines in makefiles into one-line-per-entry style. 2019-11-05 14:41:07 -08:00
jit Remove useless "return;" lines 2019-11-28 16:48:37 -03:00
lib Make StringInfo available to frontend code. 2019-11-05 14:56:40 -08:00
libpq Remove useless "return;" lines 2019-11-28 16:48:37 -03:00
main Split all OBJS style lines in makefiles into one-line-per-entry style. 2019-11-05 14:41:07 -08:00
nodes Add readfuncs.c support for AppendRelInfo. 2019-12-11 19:08:16 -05:00
optimizer Further adjust EXPLAIN's choices of table alias names. 2019-12-11 17:05:18 -05:00
parser Disallow non-default collation in ADD PRIMARY KEY/UNIQUE USING INDEX. 2019-12-06 11:25:09 -05:00
partitioning Remove extra parenthesis from comment. 2019-12-12 15:45:00 +09:00
po Translation updates 2019-06-17 15:30:20 +02:00
port Use only one thread to handle incoming signals on Windows. 2019-12-11 15:09:54 -05:00
postmaster Use procsignal_sigusr1_handler for auxiliary processes. 2019-11-25 16:16:27 -05:00
regex Split all OBJS style lines in makefiles into one-line-per-entry style. 2019-11-05 14:41:07 -08:00
replication Remove XLogFileNameP() from the tree 2019-12-03 15:06:04 +09:00
rewrite Remove useless "return;" lines 2019-11-28 16:48:37 -03:00
snowball Split all OBJS style lines in makefiles into one-line-per-entry style. 2019-11-05 14:41:07 -08:00
statistics Remove unnecessary clauses_attnums variable 2019-11-28 23:25:14 +01:00
storage Don't use _mdfd_getseg() in mdsyncfiletag(). 2019-12-14 16:32:03 +13:00
tcop Emit parameter values during query bind/execute errors 2019-12-11 18:03:35 -03:00
tsearch Make the order of the header file includes consistent in backend modules. 2019-11-12 08:30:16 +05:30
utils Fix EXTRACT(ISOYEAR FROM timestamp) for years BC. 2019-12-12 12:30:43 -05:00
.gitignore
common.mk
Makefile Split all OBJS style lines in makefiles into one-line-per-entry style. 2019-11-05 14:41:07 -08:00
nls.mk Translation updates 2019-05-20 16:00:53 +02:00