mirror of
https://github.com/postgres/postgres.git
synced 2025-08-27 07:42:10 +03:00
Update comments related to the crash-safety of the visibility map.
In hio.c, document how we avoid deadlock with respect to visibility map buffer locks. In visibilitymap.c, update the LOCKING section of the file header comment. Both oversights noted by Heikki Linnakangas.
This commit is contained in:
@@ -178,6 +178,10 @@ GetVisibilityMapPins(Relation relation, Buffer buffer1, Buffer buffer2,
|
||||
* happen if space is freed in that page after heap_update finds there's not
|
||||
* enough there). In that case, the page will be pinned and locked only once.
|
||||
*
|
||||
* For the vmbuffer and vmbuffer_other arguments, we avoid deadlock by
|
||||
* locking them only after locking the corresponding heap page, and taking
|
||||
* no further lwlocks while they are locked.
|
||||
*
|
||||
* We normally use FSM to help us find free space. However,
|
||||
* if HEAP_INSERT_SKIP_FSM is specified, we just append a new empty page to
|
||||
* the end of the relation if the tuple won't fit on the current target page.
|
||||
|
Reference in New Issue
Block a user