diff options
Diffstat (limited to 'src/backend/optimizer/prep/prepjointree.c')
-rw-r--r-- | src/backend/optimizer/prep/prepjointree.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/backend/optimizer/prep/prepjointree.c b/src/backend/optimizer/prep/prepjointree.c index c3f46a26c3a..688b3a1c396 100644 --- a/src/backend/optimizer/prep/prepjointree.c +++ b/src/backend/optimizer/prep/prepjointree.c @@ -586,10 +586,13 @@ inline_set_returning_functions(PlannerInfo *root) funcquery = inline_set_returning_function(root, rte); if (funcquery) { - /* Successful expansion, replace the rtable entry */ + /* Successful expansion, convert the RTE to a subquery */ rte->rtekind = RTE_SUBQUERY; rte->subquery = funcquery; + rte->security_barrier = false; + /* Clear fields that should not be set in a subquery RTE */ rte->functions = NIL; + rte->funcordinality = false; } } } |