Re: Improve eviction algorithm in ReorderBuffer

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: Improve eviction algorithm in ReorderBuffer
Дата
Msg-id 8cb6bbf6-57e7-4d14-9664-89505993afaa@iki.fi
обсуждение исходный текст
Ответ на Re: Improve eviction algorithm in ReorderBuffer  (Jeff Davis <pgsql@j-davis.com>)
Ответы Re: Improve eviction algorithm in ReorderBuffer
Список pgsql-hackers
On 09/04/2024 21:04, Jeff Davis wrote:
> On Fri, 2024-04-05 at 16:58 +0900, Masahiko Sawada wrote:
>>> I have some further comments and I believe changes are required for
>>> v17.
> 
> I also noticed that the simplehash is declared in binaryheap.h with
> "SH_SCOPE extern", which seems wrong. Attached is a rough patch to
> bring the declarations into binaryheap.c.
> 
> Note that the attached patch uses "SH_SCOPE static", which makes sense
> to me in this case, but causes a bunch of warnings in gcc. I will post
> separately about silencing that warning, but for now you can either
> use:
> 
>     SH_SCOPE static inline
> 
> which is probably fine, but will encourage the compiler to inline more
> code, when not all callers even use the hash table. Alternatively, you
> can do:
> 
>     SH_SCOPE static pg_attribute_unused()
> 
> which looks a bit wrong to me, but seems to silence the warnings, and
> lets the compiler decide whether or not to inline.
> 
> Also probably needs comment updates, etc.

Sorry I'm late to the party, I didn't pay attention to this thread 
earlier. But I wonder why this doesn't use the existing pairing heap 
implementation? I would assume that to be at least as good as the binary 
heap + hash table. And it's cheap to to insert to (O(1)), so we could 
probably remove the MAX_HEAP_TXN_COUNT_THRESHOLD, and always keep the 
heap up-to-date.

-- 
Heikki Linnakangas
Neon (https://neon.tech)




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

Предыдущее
От: Alexander Korotkov
Дата:
Сообщение: Re: post-freeze damage control
Следующее
От: Tom Lane
Дата:
Сообщение: Re: removal of '{' from WORD_BREAKS