[ https://issues.apache.org/jira/browse/HIVE-8576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14181749#comment-14181749 ]
Prasanth J commented on HIVE-8576: ---------------------------------- My bad. Thats my mistake. There are q file tests for stats annotation but even with that its hard to exactly reproduce many cases. This recently happened with HIVE-8549 as well. These issues crops up when running TPCDS queries and with higher scale factors (200,1000, 3000). Since operator tree will be different when stats are different (ex: mapjoin vs shuffle join) its hard to replicate these test cases with small datasets we have. I have a TPCDS scale 1 factor on my localbox but even with that many issues weren't reproducible. But yeah this if condition is my mistake. +1 > Guaranteed NPE in StatsRulesProcFactory > --------------------------------------- > > Key: HIVE-8576 > URL: https://issues.apache.org/jira/browse/HIVE-8576 > Project: Hive > Issue Type: Bug > Reporter: Lars Francke > Assignee: Lars Francke > Attachments: HIVE-8576.1.patch > > > Code looks like this: > {code} > private List<Integer> getPrimaryKeyCandidates(List<Operator<? extends > OperatorDesc>> ops) { > List<Integer> result = Lists.newArrayList(); > if (ops != null || !ops.isEmpty()) { > for (int i = 0; i < ops.size(); i++) { > {code} > The {{||}} should be {{&&}} as the current {{if}} statement can be rewritten > as {{!(ops == null && ops.isEmpty())}} which doesn't make sense. > Or am I missing something? -- This message was sent by Atlassian JIRA (v6.3.4#6332)