Repository: trafodion Updated Branches: refs/heads/master c13cd58a6 -> 88e4752c2
[TRAFODION-2983] Be careful to preserve inputs needed for output computation Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/3375ecb3 Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/3375ecb3 Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/3375ecb3 Branch: refs/heads/master Commit: 3375ecb3ece47f5d883d1d81608740589f3fc809 Parents: 17a6a5c Author: Dave Birdsall <[email protected]> Authored: Thu Mar 8 00:05:45 2018 +0000 Committer: Dave Birdsall <[email protected]> Committed: Thu Mar 8 00:05:45 2018 +0000 ---------------------------------------------------------------------- core/sql/generator/GenPreCode.cpp | 6 ++++-- core/sql/optimizer/RelExpr.cpp | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafodion/blob/3375ecb3/core/sql/generator/GenPreCode.cpp ---------------------------------------------------------------------- diff --git a/core/sql/generator/GenPreCode.cpp b/core/sql/generator/GenPreCode.cpp index 208ca0b..9832c44 100644 --- a/core/sql/generator/GenPreCode.cpp +++ b/core/sql/generator/GenPreCode.cpp @@ -1154,12 +1154,14 @@ VEGReference::replaceVEGReference(const ValueIdSet &origAvailableValues, if (VEG_DEBUG) { - NAString av,iv,vb; + NAString av,iv,vb,vr; availableValues.unparse(av); inputValues.unparse(iv); valuesToBeBound.unparse(vb); + ValueIdSet thisVegRef(getValueId()); + thisVegRef.unparse(vr); cout << endl; - cout << "VEGReference " << getValueId() << " :" << endl; + cout << "VEGReference " << getValueId() << " (" << vr << "):" << endl; cout << "AV: " << av << endl; cout << "IV: " << iv << endl; cout << "VB: " << vb << endl; http://git-wip-us.apache.org/repos/asf/trafodion/blob/3375ecb3/core/sql/optimizer/RelExpr.cpp ---------------------------------------------------------------------- diff --git a/core/sql/optimizer/RelExpr.cpp b/core/sql/optimizer/RelExpr.cpp index 3a3e457..5096b8b 100644 --- a/core/sql/optimizer/RelExpr.cpp +++ b/core/sql/optimizer/RelExpr.cpp @@ -7812,6 +7812,8 @@ NABoolean GroupByAgg::tryToPullUpPredicatesInPreCodeGen( myLocalExpr += child(0).getGroupAttr()->getCharacteristicInputs(); myLocalExpr += groupExpr(); myLocalExpr += aggregateExpr(); + // make sure we can still produce our characteristic outputs too + myLocalExpr += getGroupAttr()->getCharacteristicOutputs(); // consider only preds that we can evaluate in the parent if (optionalMap)
