forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit9aef6f1
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 parentcad6590 commit9aef6f1
3 files changed
+14
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6183 | 6183 | | |
6184 | 6184 | | |
6185 | 6185 | | |
6186 | | - | |
6187 | | - | |
| 6186 | + | |
| 6187 | + | |
6188 | 6188 | | |
6189 | 6189 | | |
6190 | 6190 | | |
| |||
6218 | 6218 | | |
6219 | 6219 | | |
6220 | 6220 | | |
6221 | | - | |
| 6221 | + | |
| 6222 | + | |
6222 | 6223 | | |
6223 | 6224 | | |
6224 | 6225 | | |
| |||
6283 | 6284 | | |
6284 | 6285 | | |
6285 | 6286 | | |
| 6287 | + | |
6286 | 6288 | | |
6287 | 6289 | | |
6288 | 6290 | | |
| |||
6298 | 6300 | | |
6299 | 6301 | | |
6300 | 6302 | | |
| 6303 | + | |
6301 | 6304 | | |
6302 | 6305 | | |
6303 | 6306 | | |
| |||
6309 | 6312 | | |
6310 | 6313 | | |
6311 | 6314 | | |
| 6315 | + | |
6312 | 6316 | | |
6313 | 6317 | | |
6314 | 6318 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
804 | 804 | | |
805 | 805 | | |
806 | 806 | | |
| 807 | + | |
807 | 808 | | |
808 | 809 | | |
809 | 810 | | |
| |||
825 | 826 | | |
826 | 827 | | |
827 | 828 | | |
828 | | - | |
| 829 | + | |
829 | 830 | | |
830 | 831 | | |
831 | | - | |
832 | 832 | | |
833 | 833 | | |
834 | 834 | | |
| |||
855 | 855 | | |
856 | 856 | | |
857 | 857 | | |
858 | | - | |
859 | | - | |
860 | | - | |
861 | | - | |
862 | | - | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
863 | 861 | | |
864 | 862 | | |
865 | 863 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
337 | 337 | | |
338 | 338 | | |
339 | 339 | | |
340 | | - | |
| 340 | + | |
| 341 | + | |
341 | 342 | | |
342 | 343 | | |
343 | 344 | | |
| |||
0 commit comments
Comments
(0)