[ https://issues.apache.org/jira/browse/HIVE-10331?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14496571#comment-14496571 ]
Prasanth Jayachandran commented on HIVE-10331: ---------------------------------------------- Actually there is more to this issue, you might need to set the hasNull default back to false as setNull() explicitly changes it to true whenever a null is encountered for a column which is correct. The wrong part is not the initialization but the condition when hasNull is missing. Can you change the initialization of hasNull same as the old one and add an else condition of hasHasNull() check which returns true when hasNull protobuf field is missing? > ORC : Is null SARG filters out all row groups written in old ORC format > ----------------------------------------------------------------------- > > Key: HIVE-10331 > URL: https://issues.apache.org/jira/browse/HIVE-10331 > Project: Hive > Issue Type: Bug > Components: Hive > Affects Versions: 1.1.0 > Reporter: Mostafa Mokhtar > Assignee: Mostafa Mokhtar > Fix For: 1.2.0 > > Attachments: HIVE-10331.01.patch, HIVE-10331.02.patch > > > Queries are returning wrong results as all row groups gets filtered out and > no rows get scanned. > {code} > SELECT > count(*) > FROM > store_sales > WHERE > ss_addr_sk IS NULL > {code} > With hive.optimize.index.filter disabled we get the correct results > In pickRowGroups stats show that hasNull_ is fales, while the rowgroup > actually has null. > Same query runs fine for newly loaded ORC tables. -- This message was sent by Atlassian JIRA (v6.3.4#6332)