Re: Assert failure on 'list_member_ptr(rel->joininfo, restrictinfo)'

Поиск
Список
Период
Сортировка
От Richard Guo
Тема Re: Assert failure on 'list_member_ptr(rel->joininfo, restrictinfo)'
Дата
Msg-id CAMbWs49oGdqF7aLg3OsSjo3tRFgU=vUAtKC28DtWFZNds5mc=Q@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Assert failure on 'list_member_ptr(rel->joininfo, restrictinfo)'  (Alexander Korotkov <aekorotkov@gmail.com>)
Ответы Re: Assert failure on 'list_member_ptr(rel->joininfo, restrictinfo)'  (Alexander Korotkov <aekorotkov@gmail.com>)
Список pgsql-hackers

On Sun, Nov 19, 2023 at 9:17 AM Alexander Korotkov <aekorotkov@gmail.com> wrote:
It's here.  New REALLOCATE_BITMAPSETS forces bitmapset reallocation on
each modification.

+1 to the idea of introducing a reallocation mode to Bitmapset.
 
I had the feeling of falling into a rabbit hole while debugging all
the cases of failure with this new option.  With the second patch
regressions tests pass.

It seems to me that we have always had situations where we share the
same pointer to a Bitmapset structure across different places.  I do not
think this is a problem as long as we do not modify the Bitmapsets in a
way that requires reallocation or impact the locations sharing the same
pointer.

So I'm wondering, instead of attempting to avoid sharing pointer to
Bitmapset in all locations that have problems, can we simply bms_copy
the original Bitmapset within replace_relid() before making any
modifications, as I proposed previously?  Of course, as Andres pointed
out, we need to do so also for the "Delete relid without substitution"
path.  Please see the attached.

Thanks
Richard
Вложения

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

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: [HACKERS] Changing references of password encryption to hashing
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: [HACKERS] psql casts aspersions on server reliability