Re: MaxOffsetNumber for Table AMs

Поиск
Список
Период
Сортировка
От Hannu Krosing
Тема Re: MaxOffsetNumber for Table AMs
Дата
Msg-id CAMT0RQQ0=MfT1hHn+qZ++OW_3d6N86LA7ncQh5QqHwGth758ew@mail.gmail.com
обсуждение исходный текст
Ответ на Re: MaxOffsetNumber for Table AMs  (Peter Geoghegan <pg@bowt.ie>)
Ответы Re: MaxOffsetNumber for Table AMs  (Jeff Davis <pgsql@j-davis.com>)
Список pgsql-hackers
How hard would it be to declare TID as current ItemPointerData with
some values prohibited (NULL, SpecTokenOffsetNumber = 0xfffe,
MovedPartitionsOffsetNumber = 0xfffd, presumably also 0xffff ?).

And then commit to fixing usage outside access/heap/ which depend on
small value for MaxHeapTuplesPerPage, currently only nbodes/tidscan.c
, access/gin/ginpostinglist.c and access/brin/brin_*.c

there is also MaxHeapTuplesPerPage usage in
./backend/storage/page/bufpage.c but it seems to be all in
heapam-dependent functions (PageRepairFragmentation(),
PageGetHeapFreeSpace() and few others) which most likely should be
moved to access/heap/

Doing it this way would leave us with some manageable complexity in
mapping from TID to 48-bit integer and/or 3 wanted positions in  2^32

------------
Hannu Krosing


On Wed, May 5, 2021 at 8:40 PM Peter Geoghegan <pg@bowt.ie> wrote:
>
> On Wed, May 5, 2021 at 11:25 AM Andres Freund <andres@anarazel.de> wrote:
> > Agreed. And we can increase the fit a good bit without needing invasive
> > all-over changes. With those changes often even helping heap.
> >
> > E.g. tidbitmap.c's harcoded use of MaxHeapTuplesPerPage is a problem
> > even for heap - we waste a lot of space that's not commonly used. A
> > better datastructure (radix tree like I'd say, but several tree shaped
> > approaches seem possible).
>
> Agreed -- even if we only cared about heapam we still ought to do
> something about tidbitmap.c's use of MaxHeapTuplesPerPage.
>
> --
> Peter Geoghegan
>
>



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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: PG in container w/ pid namespace is init, process exits cause restart
Следующее
От: Tom Lane
Дата:
Сообщение: Re: PG in container w/ pid namespace is init, process exits cause restart