forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit370bc77
committed
Unpin buffer before inplace update waits for an XID to end.
Commita07e03f changed inplace updatesto wait for heap_update() commands like GRANT TABLE and GRANT DATABASE.By keeping the pin during that wait, a sequence of autovacuum workersand an uncommitted GRANT starved one foreground LockBufferForCleanup()for six minutes, on buildfarm member sarus. Prevent, at the cost of abit of complexity. Back-patch to v12, like the earlier commit. Thatcommit and heap_inplace_lock() have not yet appeared in any release.Discussion:https://postgr.es/m/20241026184936.ae.nmisch@google.com1 parenta0c8d60 commit370bc77
3 files changed
+14
-11
lines changedLines changed: 7 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
6023 | 6023 |
| |
6024 | 6024 |
| |
6025 | 6025 |
| |
6026 |
| - | |
6027 |
| - | |
| 6026 | + | |
| 6027 | + | |
6028 | 6028 |
| |
6029 | 6029 |
| |
6030 | 6030 |
| |
| |||
6058 | 6058 |
| |
6059 | 6059 |
| |
6060 | 6060 |
| |
6061 |
| - | |
| 6061 | + | |
| 6062 | + | |
6062 | 6063 |
| |
6063 | 6064 |
| |
6064 | 6065 |
| |
| |||
6123 | 6124 |
| |
6124 | 6125 |
| |
6125 | 6126 |
| |
| 6127 | + | |
6126 | 6128 |
| |
6127 | 6129 |
| |
6128 | 6130 |
| |
| |||
6138 | 6140 |
| |
6139 | 6141 |
| |
6140 | 6142 |
| |
| 6143 | + | |
6141 | 6144 |
| |
6142 | 6145 |
| |
6143 | 6146 |
| |
| |||
6149 | 6152 |
| |
6150 | 6153 |
| |
6151 | 6154 |
| |
| 6155 | + | |
6152 | 6156 |
| |
6153 | 6157 |
| |
6154 | 6158 |
| |
|
Lines changed: 5 additions & 7 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
805 | 805 |
| |
806 | 806 |
| |
807 | 807 |
| |
| 808 | + | |
808 | 809 |
| |
809 | 810 |
| |
810 | 811 |
| |
| |||
826 | 827 |
| |
827 | 828 |
| |
828 | 829 |
| |
829 |
| - | |
| 830 | + | |
830 | 831 |
| |
831 | 832 |
| |
832 |
| - | |
833 | 833 |
| |
834 | 834 |
| |
835 | 835 |
| |
| |||
855 | 855 |
| |
856 | 856 |
| |
857 | 857 |
| |
858 |
| - | |
859 |
| - | |
860 |
| - | |
861 |
| - | |
862 |
| - | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
863 | 861 |
| |
864 | 862 |
| |
865 | 863 |
| |
|
Lines changed: 2 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
257 | 257 |
| |
258 | 258 |
| |
259 | 259 |
| |
260 |
| - | |
| 260 | + | |
| 261 | + | |
261 | 262 |
| |
262 | 263 |
| |
263 | 264 |
| |
|
0 commit comments
Comments
(0)