Re: heapam_index_build_range_scan's anyvisible
От | Alvaro Herrera |
---|---|
Тема | Re: heapam_index_build_range_scan's anyvisible |
Дата | |
Msg-id | 20190607212603.GA26702@alvherre.pgsql обсуждение исходный текст |
Ответ на | Re: heapam_index_build_range_scan's anyvisible (Robert Haas <robertmhaas@gmail.com>) |
Список | pgsql-hackers |
On 2019-Jun-07, Robert Haas wrote: > Yeah, I wondered whether SnapshotNonVacuumable might've been added > later, but I was too lazy to check the commit log. I'll try coding up > that approach and see how it looks. Thanks. > But do you have any comment on the question of whether this function > is actually safe with < ShareLock, per the comments about caching > HOT-related state across buffer lock releases? Well, as far as I understand we do hold a buffer pin on the page the whole time until we abandon it, which prevents HOT pruning, so the root offset cache should be safe (since heap_page_prune requires cleanup lock). The thing we don't keep held is a buffer lock, so I/U/D could occur, but those are not supposed to be hazards for the BRIN use, since that's covered by the anyvisible / SnapshotNonVacuumable hack^Wtechnique. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
В списке pgsql-hackers по дате отправления: