[TRAFODION-2901] fix core dump

Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/c5ef3604
Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/c5ef3604
Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/c5ef3604

Branch: refs/heads/master
Commit: c5ef36040b155a310e98739803ce43bcc6e01d57
Parents: 00378f9
Author: Guhaiyan <[email protected]>
Authored: Mon Jun 4 02:50:34 2018 +0000
Committer: Guhaiyan <[email protected]>
Committed: Mon Jun 4 02:50:34 2018 +0000

----------------------------------------------------------------------
 core/sql/optimizer/RelExpr.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafodion/blob/c5ef3604/core/sql/optimizer/RelExpr.cpp
----------------------------------------------------------------------
diff --git a/core/sql/optimizer/RelExpr.cpp b/core/sql/optimizer/RelExpr.cpp
index 7f881d8..14b841c 100644
--- a/core/sql/optimizer/RelExpr.cpp
+++ b/core/sql/optimizer/RelExpr.cpp
@@ -13342,7 +13342,9 @@ void GenericUpdate::pushdownCoveredExpr(const 
ValueIdSet &outputExpr,
                                predicatesOnParent,
                                &localExprs);
 
-  if (avoidHalloween() && child(0) && child(0)->getGroupAttr())
+  if (avoidHalloween() && child(0) &&
+      child(0)->getOperatorType() == REL_SCAN &&
+      child(0)->getGroupAttr())
     {
       ValueIdSet cur_output = 
child(0)->getGroupAttr()->getCharacteristicOutputs();
       if (cur_output.isEmpty())

Reply via email to