[
https://issues.apache.org/jira/browse/HIVE-22692?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17007400#comment-17007400
]
Krisztian Kasa commented on HIVE-22692:
---------------------------------------
Both are necessary: 'fixDecimalDataTypePhysicalVariations' fixes only
expressions which has children.
{code:java}
private static VectorExpression fixDecimalDataTypePhysicalVariations(final
VectorExpression parent,
final VectorExpression[] children, final VectorizationContext vContext)
throws HiveException {
if (children == null || children.length == 0) {
return parent;
}
{code}
> Use only fixDecimalDataTypePhysicalVariations when vectorizing TopNKey
> operator
> -------------------------------------------------------------------------------
>
> Key: HIVE-22692
> URL: https://issues.apache.org/jira/browse/HIVE-22692
> Project: Hive
> Issue Type: Improvement
> Reporter: Krisztian Kasa
> Assignee: Krisztian Kasa
> Priority: Minor
> Fix For: 4.0.0
>
> Attachments: HIVE-22692.1.patch
>
>
> Currently both 'fixDecimalDataTypePhysicalVariations' and
> 'getVectorExpressionsUpConvertDecimal64' are called when vectorizing TopNKey
> operator in 'Vectorizer.java'
> {code}
> vContext.markActualScratchColumns();
> try {
> List<ExprNodeDesc> keyColumns = topNKeyDesc.getKeyColumns();
> keyExpressions =
> vContext.getVectorExpressionsUpConvertDecimal64(keyColumns);
> fixDecimalDataTypePhysicalVariations(vContext, keyExpressions);
> } finally {
> vContext.freeMarkedScratchColumns();
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)