Github user DaveBirdsall commented on a diff in the pull request:
https://github.com/apache/trafodion/pull/1543#discussion_r186773837
--- Diff: core/sql/optimizer/RelExpr.cpp ---
@@ -7880,11 +7880,17 @@ NABoolean
GroupByAgg::tryToPullUpPredicatesInPreCodeGen(
else
pulledPredicates += tempPulledPreds;
+ // just remove pulled up predicates from char. input
+ ValueIdSet newInputs(getGroupAttr()->getCharacteristicInputs());
+ myLocalExpr += selectionPred();
+ myLocalExpr -= tempPulledPreds;
+ myLocalExpr.weedOutUnreferenced(newInputs);
--- End diff --
Hi Andy: I tried this. I get one row back, "Y level code", which looks
like the correct result. I tried varying the query, replacing the parameter '?'
with the value '12345678' and got the same answer. I got the same query plan
for both formulations. So I don't think I successfully reproduced the problem.
What query plan do you get in the failing case?
---