fix-trigger-cache-lookup-failed.patch
text/x-patch
Filename: fix-trigger-cache-lookup-failed.patch
Type: text/x-patch
Part: 0
Patch
Format: unified
| File | + | − |
|---|---|---|
| src/backend/rewrite/rewriteHandler.c | 8 | 1 |
diff --git a/src/backend/rewrite/rewriteHandler.c b/src/backend/rewrite/rewriteHandler.c
index d02fd83c0a..2f77ff87dc 100644
--- a/src/backend/rewrite/rewriteHandler.c
+++ b/src/backend/rewrite/rewriteHandler.c
@@ -3857,13 +3857,20 @@ RewriteQuery(Query *parsetree, List *rewrite_events)
foreach(n, product_queries)
{
Query *pt = (Query *) lfirst(n);
+ Relation target_relation;
+ RangeTblEntry *target_entry;
RangeTblEntry *values_rte = rt_fetch(values_rte_index,
pt->rtable);
+ target_entry = rt_fetch(pt->resultRelation, pt->rtable);
+ target_relation = table_open(target_entry->relid, NoLock);
+
rewriteValuesRTE(pt, values_rte, values_rte_index,
- rt_entry_relation,
+ target_relation,
true, /* Force remaining defaults to NULL */
NULL);
+
+ table_close(target_relation, NoLock);
}
}