[ 
https://issues.apache.org/jira/browse/HIVE-4579?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13668881#comment-13668881
 ] 

Eric Hanson commented on HIVE-4579:
-----------------------------------

Overall this looks great. One issue that I think needs to be rephrased involves 
NOT. The expression ^(a > b) is the same as a <= b in SQL semantics. In 
general, for all the basic relational operators, <, >, <=, >=, <>, =, you can 
invert them when you apply NOT to them, thus eliminating the NOT, because any 
comparison with NULL is false. Of course, not all negated Boolean clauses can 
be converted to equivalent clauses without negation, and negation will have to 
be handled as a first class thing for those cases.

I'm not sure what you mean by "maybe" answers.

Can you be more explicit about "All functions and udfs will be considered as 
indeterminate and eliminate the disjunction sub-expression that they occur in"? 
I am not sure what that means exactly. I think you mean that such clauses will 
be removed from the SARG and treated as a residual.

For "The primitive clauses will be
extended to include presence in a bloom filter" do you mean that bloom filters 
will be added as a primitive clause type later? Please clarify.


                
> Create a SARG interface for RecordReaders
> -----------------------------------------
>
>                 Key: HIVE-4579
>                 URL: https://issues.apache.org/jira/browse/HIVE-4579
>             Project: Hive
>          Issue Type: Improvement
>            Reporter: Owen O'Malley
>            Assignee: Owen O'Malley
>         Attachments: h-4579.patch, pushdown.pdf
>
>
> I think we should create a SARG (http://en.wikipedia.org/wiki/Sargable) 
> interface for RecordReaders. For a first pass, I'll create an API that uses 
> the value stored in hive.io.filter.expr.serialized.
> The desire is to define an simpler interface that the direct AST expression 
> that is provided by hive.io.filter.expr.serialized so that the code to 
> evaluate expressions can be generalized instead of put inside a particular 
> RecordReader.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to