Re: BUG #18314: PARALLEL UNSAFE function does not prevent parallel index build

Поиск
Список
Период
Сортировка
От jian he
Тема Re: BUG #18314: PARALLEL UNSAFE function does not prevent parallel index build
Дата
Msg-id CACJufxFzy4A8Pbk-TtVa1+cjx9Kf09m+7EOEAYwN0ex4mZEjSA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: BUG #18314: PARALLEL UNSAFE function does not prevent parallel index build  (Tender Wang <tndrwang@gmail.com>)
Ответы Re: BUG #18314: PARALLEL UNSAFE function does not prevent parallel index build  (Michael Paquier <michael@paquier.xyz>)
Список pgsql-bugs
On Thu, Feb 29, 2024 at 3:08 PM Tender Wang <tndrwang@gmail.com> wrote:
>
> Hi jian he,
>   I'm sorry for the delayed response.  Thanks for your reviewing, and the new v2 patch include your advices.
>
> As no others reply to this patch. I would add it to the 2024-03 commitfest.
> --


`
if (heap->rd_rel->relpersistence == RELPERSISTENCE_TEMP ||
!is_parallel_safe(root, (Node *) RelationGetIndexExpressions(index, true)) ||
!is_parallel_safe(root, (Node *) RelationGetIndexPredicate(index, true)))
{
parallel_workers = 0;
goto done;
}
`
I refactored the comments for the code above.
Feel free to change it.

I also toggled {RelationGetIndexExpressions,
RelationGetIndexPredicate}'s second argument
from false to true where it's false,
true to false where it's true.

I guess it's more intuitive to do
`
if (get_raw_expr)
  return result;
`
since at that time, the `result` is a raw expression.

Overall it looks good.

Вложения

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

Предыдущее
От: Andrei Lepikhov
Дата:
Сообщение: Re: [Bugg hash join and parallel worker]
Следующее
От: Alexander Lakhin
Дата:
Сообщение: Re: BUG #18369: logical decoding core on AssertTXNLsnOrder()