index af04b051601cf86a58b24a09844c1eb4093fdef4..043baf3c7903577661af3d9107cce621dfcea9cc 100644 (file)
@@ -2564,14 +2564,19 @@ set_deparse_for_query(deparse_namespace *dpns, Query *query,
dpns->rtable_columns = lappend(dpns->rtable_columns,
palloc0(sizeof(deparse_columns)));
- /* Detect whether global uniqueness of USING names is needed */
- dpns->unique_using = has_unnamed_full_join_using((Node *) query->jointree);
+ /* If it's a utility query, it won't have a jointree */
+ if (query->jointree)
+ {
+ /* Detect whether global uniqueness of USING names is needed */
+ dpns->unique_using =
+ has_unnamed_full_join_using((Node *) query->jointree);
- /*
- * Select names for columns merged by USING, via a recursive pass over the
- * query jointree.
- */
- set_using_names(dpns, (Node *) query->jointree);
+ /*
+ * Select names for columns merged by USING, via a recursive pass over
+ * the query jointree.
+ */
+ set_using_names(dpns, (Node *) query->jointree);
+ }
/*
* Now assign remaining column aliases for each RTE. We do this in a
index dc3c8a83812f80c96410060d507e2b0f664d84df..57ae8427ecd577b5d2f2da6ffe279decce3fec30 100644 (file)
11 | 13 | new
(12 rows)
+create rule r3 as on delete to rules_src do notify rules_src_deletion;
\d+ rules_src
Table "public.rules_src"
Column | Type | Modifiers | Storage | Stats target | Description
ON UPDATE TO rules_src DO INSERT INTO rules_log (f1, f2, tag) VALUES (old.f1,old.f2,'old'::text), (new.f1,new.f2,'new'::text)
r2 AS
ON UPDATE TO rules_src DO VALUES (old.f1,old.f2,'old'::text), (new.f1,new.f2,'new'::text)
+ r3 AS
+ ON DELETE TO rules_src DO
+ NOTIFY rules_src_deletion
Has OIDs: no
--