forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit42c63ca
committed
Fix bugs in SSI tuple locking.
1. In heap_hot_search_buffer(), the PredicateLockTuple() call is passedwrong offset number. heapTuple->t_self is set to the tid of the firsttuple in the chain that's visited, not the one actually being read.2. CheckForSerializableConflictIn() uses the tuple's t_ctid fieldinstead of t_self to check for exiting predicate locks on the tuple. Ifthe tuple was updated, but the updater rolled back, t_ctid points to theaborted dead tuple.Reported by Hannu Krosing. Backpatch to 9.1.1 parent1c4dfd1 commit42c63ca
2 files changed
+5
-2
lines changedLines changed: 3 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1555 | 1555 |
| |
1556 | 1556 |
| |
1557 | 1557 |
| |
| 1558 | + | |
| 1559 | + | |
1558 | 1560 |
| |
1559 | 1561 |
| |
1560 | 1562 |
| |
| |||
1586 | 1588 |
| |
1587 | 1589 |
| |
1588 | 1590 |
| |
| 1591 | + | |
1589 | 1592 |
| |
1590 | 1593 |
| |
1591 | 1594 |
| |
|
Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
4204 | 4204 |
| |
4205 | 4205 |
| |
4206 | 4206 |
| |
4207 |
| - | |
4208 |
| - | |
| 4207 | + | |
| 4208 | + | |
4209 | 4209 |
| |
4210 | 4210 |
| |
4211 | 4211 |
| |
|
0 commit comments
Comments
(0)