On Sat, Feb 25, 2017 at 9:47 PM, Dilip Kumar <dilipbal...@gmail.com> wrote: > On Sat, Feb 25, 2017 at 5:12 PM, Amit Kapila <amit.kapil...@gmail.com> wrote: >> Sure, but that should only happen if the function is *not* declared as >> parallel safe (aka in parallel safe functions, we should not generate >> parallel plans). > > So basically we want to put a restriction that parallel-safe function > can not use the parallel query? This will work but it seems too > restrictive to me. Because by marking function parallel safe we enable > it to be used with the outer parallel query that is fine. But, that > should not restrict the function from using the parallel query if it's > used with the other outer query which is not having the parallel > plan(or function is executed directly). >
I think if the user is explicitly marking a function as parallel-safe, then it doesn't make much sense to allow parallel query in such functions as it won't be feasible for the planner (or at least it will be quite expensive) to detect the same. By the way, if the user has any such expectation from a function, then he can mark the function as parallel-restricted or parallel-unsafe. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers