Re: Fix BUG #17335: Duplicate result rows in Gather node - Mailing list pgsql-hackers

From David Rowley
Subject Re: Fix BUG #17335: Duplicate result rows in Gather node
Date
Msg-id CAApHDvo8xBHgbdEn4YKxtHNXqOWBqzpf=qfsOfywbjFXYP_NAQ@mail.gmail.com
Whole thread Raw
In response to Re: Fix BUG #17335: Duplicate result rows in Gather node  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: Fix BUG #17335: Duplicate result rows in Gather node
Re: Fix BUG #17335: Duplicate result rows in Gather node
List pgsql-hackers
Thanks for having a look at this.

On Fri, 4 Feb 2022 at 13:48, Robert Haas <robertmhaas@gmail.com> wrote:
> I think the actual rule is: every path under a Gather or GatherMerge
> must be parallel-safe.

I've adjusted the patch so that it counts parallel_aware and
parallel_safe Paths independently and verifies everything below a
Gather[Merge] is parallel_safe.

The diff stat currently looks like:

src/backend/optimizer/plan/createplan.c | 230
1 file changed, 230 insertions(+)

I still feel this is quite a bit of code for what we're getting here.
I'd be more for it if the path traversal function existed for some
other reason and I was just adding the callback functions and Asserts.

I'm keen to hear what others think about that.

David

Attachment

pgsql-hackers by date:

Previous
From: Peter Smith
Date:
Subject: Re: Move replication slot structures/enums/macros to a new header file for better usability by external tools/modules
Next
From: Robert Haas
Date:
Subject: Re: make MaxBackends available in _PG_init