aboutsummaryrefslogtreecommitdiff
path: root/src/backend/optimizer/prep/prepjointree.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/optimizer/prep/prepjointree.c')
-rw-r--r--src/backend/optimizer/prep/prepjointree.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/backend/optimizer/prep/prepjointree.c b/src/backend/optimizer/prep/prepjointree.c
index 6911177b68a..6c6ac8dc0aa 100644
--- a/src/backend/optimizer/prep/prepjointree.c
+++ b/src/backend/optimizer/prep/prepjointree.c
@@ -1748,10 +1748,9 @@ is_simple_union_all(Query *subquery)
elog(ERROR, "subquery is bogus");
/* Is it a set-operation query at all? */
- topop = (SetOperationStmt *) subquery->setOperations;
+ topop = castNode(SetOperationStmt, subquery->setOperations);
if (!topop)
return false;
- Assert(IsA(topop, SetOperationStmt));
/* Can't handle ORDER BY, LIMIT/OFFSET, locking, or WITH */
if (subquery->sortClause ||
@@ -2323,8 +2322,8 @@ flatten_simple_union_all(PlannerInfo *root)
RangeTblRef *rtr;
/* Shouldn't be called unless query has setops */
- topop = (SetOperationStmt *) parse->setOperations;
- Assert(topop && IsA(topop, SetOperationStmt));
+ topop = castNode(SetOperationStmt, parse->setOperations);
+ Assert(topop);
/* Can't optimize away a recursive UNION */
if (root->hasRecursion)