On Mon, Aug 17, 2026 at 6:27 PM Alexander Korotkov <[email protected]> wrote:
>
> Any objections to pushing these 4 fixes?

As mentioned in [1], RestrictSearchPath is called before
MergePartitionsMoveRows and SplitPartitionMoveRows.
This means that if an expression contains anything non-immutable, we can't
evaluate it consistently for every row under a restricted search path,
imagine function text_regclass.
It would be better to add a comment directly above SplitPartitionMoveRows and
MergePartitionsMoveRows to mention this situation.
This will help future readers understand the implications.

In MergePartitionsMoveRows, the `foreach(ltab, *wqueue)` can be removed,
because ATExecMergePartitions->createPartitionTable doesn't call
ATGetQueueEntry.
Similarly, the foreach loop in deleteSplitPartitionContext can also be
removed for the same reason,
we can probably get rid of deleteSplitPartitionContext.

[1]: 
https://www.postgresql.org/message-id/CACJufxHk0F%2B1UyvExHoMfBZrsUeGQiB8MBm1PC5Fd3MtAszLGw%40mail.gmail.com



--
jian
https://www.enterprisedb.com/


Reply via email to