diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2020-03-31 17:06:22 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2020-03-31 17:06:22 -0400 |
commit | 6c426cd43790d56e6b96c21ae2d968ceb733bdde (patch) | |
tree | 33c27afccf1ff9c5cd4329d6979c8682aa81c3f0 /src/include/executor/nodeModifyTable.h | |
parent | 1fd0eee66f1e74d6a547d860a9f5d51a2277bb02 (diff) | |
download | postgresql-6c426cd43790d56e6b96c21ae2d968ceb733bdde.tar.gz postgresql-6c426cd43790d56e6b96c21ae2d968ceb733bdde.zip |
Fix race condition in statext_store().
Must hold some lock on the pg_statistic_ext_data catalog *before*
we look up the tuple we aim to replace. Otherwise a concurrent
VACUUM FULL or similar operation could move it to a different TID,
leaving us trying to replace the wrong tuple.
Back-patch to v12 where this got broken.
Credit goes to Dean Rasheed; I'm just doing the clerical work.
Discussion: https://postgr.es/m/CAEZATCU0zHMDiQV0g8P2U+YSP9C1idUPrn79DajsbonwkN0xvQ@mail.gmail.com
Diffstat (limited to 'src/include/executor/nodeModifyTable.h')
0 files changed, 0 insertions, 0 deletions