Re: Improve list manipulation in several places

Поиск
Список
Период
Сортировка
От Richard Guo
Тема Re: Improve list manipulation in several places
Дата
Msg-id CAMbWs4_-H_6EBnk4LPvEemD48Z4cszLC6KjeyQQH8tjOd=uUUA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Improve list manipulation in several places  (Peter Eisentraut <peter.eisentraut@enterprisedb.com>)
Ответы Re: Improve list manipulation in several places  (Peter Eisentraut <peter.eisentraut@enterprisedb.com>)
Список pgsql-hackers

On Sat, Apr 22, 2023 at 12:55 AM Peter Eisentraut <peter.eisentraut@enterprisedb.com> wrote:
On 21.04.23 09:34, Richard Guo wrote:
> There was discussion in [1] about improvements to list manipulation in
> several places.  But since the discussion is not related to the topic in
> that thread, fork a new thread here and attach a patch to show my
> thoughts.
>
> Some are just cosmetic changes by using macros.  The others should have
> performance gain from the avoidance of moving list entries.  But I doubt
> the performance gain can be noticed or measured, as currently there are
> only a few places affected by the change.  I still think the changes are
> worthwhile though, because it is very likely that future usage of the
> same scenario can benefit from these changes.

Can you explain the changes?

Maybe this patch should be split up.  It seems some of the changes are
trivial simplifications using existing APIs, while others introduce new
functions.

Thanks for the suggestion.  I've split the patch into two as attached.
0001 is just a minor simplification by replacing lfirst(list_head(list))
with linitial(list).  0002 introduces new functions to reduce the
movement of list elements in several places so as to gain performance
improvement and benefit future callers.

Thanks
Richard
Вложения

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

Предыдущее
От: Pavel Stehule
Дата:
Сообщение: xmlserialize bug - extra empty row at the end
Следующее
От: Richard Guo
Дата:
Сообщение: Re: Improve list manipulation in several places