aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/clog.c
diff options
context:
space:
mode:
authorMichael Paquier <michael@paquier.xyz>2021-06-28 10:43:01 +0900
committerMichael Paquier <michael@paquier.xyz>2021-06-28 10:43:01 +0900
commite52f7cbec16ce6ccbf7f1b73a8775b42833614ce (patch)
tree876b4282433c3d7288a5c73c064d550db41072a7 /src/backend/access/transam/clog.c
parentbc031cf133b786ab3c3def9d28b044b85a743edc (diff)
downloadpostgresql-e52f7cbec16ce6ccbf7f1b73a8775b42833614ce.tar.gz
postgresql-e52f7cbec16ce6ccbf7f1b73a8775b42833614ce.zip
Make index_set_state_flags() transactional
3c84046 is the original commit that introduced index_set_state_flags(), where the presence of SnapshotNow made necessary the use of an in-place update. SnapshotNow has been removed in 813fb03, so there is no actual reasons to not make this operation transactional. As reported by Andrey, it is possible to trigger the assertion of this routine expecting no transactional updates when switching the pg_index state flags, using a predicate mark as immutable but calling stable or volatile functions. 83158f7 has been around for a couple of months on HEAD now with no issues found related to it, so it looks safe enough for a backpatch. Reported-by: Andrey Lepikhov Author: Michael Paquier Reviewed-by: Anastasia Lubennikova Discussion: https://postgr.es/m/20200903080440.GA8559@paquier.xyz Discussion: https://postgr.es/m/9b905019-5297-7372-0ad2-e1a4bb66a719@postgrespro.ru Backpatch-through: 9.6
Diffstat (limited to 'src/backend/access/transam/clog.c')
0 files changed, 0 insertions, 0 deletions