I wrote:
> Actually, the Gather path *isn't* parameterized.  The problem here is
> that we're planning an unflattened subquery, and the only thing that
> is parallel-unsafe is that there is an outer Param in its toplevel tlist,
> and we're somehow deciding that we can stick that unsafe tlist into (and
> beneath) the Gather node.  So something rotten in that area, but I've not
> quite found it yet.

Hah: not where I thought it was at all.  The problem seems to be down to
the optimization I put into is_parallel_safe() awhile back to skip testing
anything if we previously found the entire querytree to be parallel-safe.
Well, the raw query tree *is* parallel-safe.  It's only when we inject
some Params that we have a parallel hazard.  So that optimization is too
optimistic :-(

                        regards, tom lane


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to