Re: Pass heaprel to GlobalVisTestFor() in vacuumRedirectAndPlaceholder()

Поиск
Список
Период
Сортировка
От Peter Geoghegan
Тема Re: Pass heaprel to GlobalVisTestFor() in vacuumRedirectAndPlaceholder()
Дата
Msg-id CAH2-Wz=jGryxWm74G1khSt0zNPUNhezYJnvSjNo2t3Jswtb8ww@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Pass heaprel to GlobalVisTestFor() in vacuumRedirectAndPlaceholder()  ("Drouvot, Bertrand" <bertranddrouvot.pg@gmail.com>)
Список pgsql-hackers
On Mon, Apr 3, 2023 at 12:09 AM Drouvot, Bertrand
<bertranddrouvot.pg@gmail.com> wrote:
> Right. Please find enclosed V2 also taking care of BTPageIsRecyclable()
> and _bt_pendingfsm_finalize().

Pushed that as too separate patches just now. Thanks.

BTW, I'm not overly happy about the extent of the changes to nbtree
from commit 61b313e4. I understand that it was necessary to pass down
a heaprel in a lot of places, which is bound to create a lot of churn.
However, a lot of the churn from the commit seems completely
avoidable. There is no reason why the BT_READ path in _bt_getbuf()
could possibly require a valid heaprel. In fact, most individual
BT_WRITE calls don't need heaprel, either -- only those that pass
P_NEW. The changes affecting places like _bt_mkscankey() and
_bt_metaversion() seem particularly bad.

Anyway, I'll take care of this myself at some point after feature freeze.

--
Peter Geoghegan



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Justin Pryzby
Дата:
Сообщение: Re: zstd compression for pg_dump
Следующее
От: Andres Freund
Дата:
Сообщение: Re: Minimal logical decoding on standbys