[ https://issues.apache.org/jira/browse/HIVE-25749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zoltan Haindrich resolved HIVE-25749. ------------------------------------- Fix Version/s: 4.0.0 Resolution: Fixed merged into master. Thank you [~asolimando]! > Check if RelMetadataQuery.collations() returns null to avoid NPE > ---------------------------------------------------------------- > > Key: HIVE-25749 > URL: https://issues.apache.org/jira/browse/HIVE-25749 > Project: Hive > Issue Type: Bug > Components: CBO, Query Planning > Affects Versions: 4.0.0 > Reporter: Alessandro Solimando > Assignee: Alessandro Solimando > Priority: Major > Labels: pull-request-available > Fix For: 4.0.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > Accoring to "RelMetadataQuery.collations()" > [javadoc|https://github.com/apache/calcite/blob/calcite-1.25.0/core/src/main/java/org/apache/calcite/rel/metadata/RelMetadataQuery.java#L537], > the method can return "null" if collactions information are not available. > Hive invokes the method in two places > ([RelFieldTrimmer|https://github.com/apache/hive/blob/1046f41ea36ab3c8b036481128ba9b76dda2882a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/RelFieldTrimmer.java#L192] > and > [HiveJoin|https://github.com/apache/hive/blob/1046f41ea36ab3c8b036481128ba9b76dda2882a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/reloperators/HiveJoin.java#L206]), > but it does not check for "null" return values, which can cause NPE. > For RelFieldTrimmer, the same bug has been fixed in Calcite (where the code > has been taken from) here: > https://github.com/apache/calcite/commit/47871235177a3a0d398b1d890d1d2e947028e052 -- This message was sent by Atlassian Jira (v8.20.1#820001)