diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c index 831c55ce787..c4eb15aebb0 100644 --- a/src/backend/executor/execMain.c +++ b/src/backend/executor/execMain.c @@ -1354,7 +1354,11 @@ ExecGetTriggerResultRel(EState *estate, Oid relid, { rInfo = lfirst(l); if (RelationGetRelid(rInfo->ri_RelationDesc) == relid) + { + rInfo->ri_RootResultRelInfo = rootRelInfo; return rInfo; + + } } /* @@ -1365,7 +1369,10 @@ ExecGetTriggerResultRel(EState *estate, Oid relid, { rInfo = (ResultRelInfo *) lfirst(l); if (RelationGetRelid(rInfo->ri_RelationDesc) == relid) + { + rInfo->ri_RootResultRelInfo = rootRelInfo; return rInfo; + } } /* Nope, but maybe we already made an extra ResultRelInfo for it */ @@ -1373,7 +1380,10 @@ ExecGetTriggerResultRel(EState *estate, Oid relid, { rInfo = (ResultRelInfo *) lfirst(l); if (RelationGetRelid(rInfo->ri_RelationDesc) == relid) + { + rInfo->ri_RootResultRelInfo = rootRelInfo; return rInfo; + } } /* Nope, so we need a new one */