mirror of
https://github.com/postgres/postgres.git
synced 2025-12-17 00:03:29 -05:00
Fix snapshot handling bug in recent BRIN fix
Commit a95e3d84c0e0 added ActiveSnapshot push+pop when processing work-items (BRIN autosummarization), but forgot to handle the case of a transaction failing during the run, which drops the snapshot untimely. Fix by making the pop conditional on an element being actually there. Author: Álvaro Herrera <alvherre@kurilemu.de> Backpatch-through: 13 Discussion: https://postgr.es/m/202511041648.nofajnuddmwk@alvherre.pgsql
This commit is contained in:
parent
1213cb4753
commit
0a3d27bfe0
@ -2558,7 +2558,8 @@ deleted:
|
|||||||
|
|
||||||
PushActiveSnapshot(GetTransactionSnapshot());
|
PushActiveSnapshot(GetTransactionSnapshot());
|
||||||
perform_work_item(workitem);
|
perform_work_item(workitem);
|
||||||
PopActiveSnapshot();
|
if (ActiveSnapshotSet()) /* transaction could have aborted */
|
||||||
|
PopActiveSnapshot();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Check for config changes before acquiring lock for further jobs.
|
* Check for config changes before acquiring lock for further jobs.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user