Hi,

I use the HiveStoragePredicateHandler interface on my storage handler to be
able to push down filters to my record reader for early pruning. It seems
like the IndexPredicateAnalyzer is a bit limited on what expression that
could be pushed down.

>From a comment in IndexPredicateAnalyzer:
"We can only push down stuff which appears as part of a pure conjunction:
reject OR, CASE, etc."

As such I can push down simple AND expressions in my where clause (and also
IN RLIKE and LIKE) but I cannot use OR.

Does anybody know why this limitation exists? A guess from my side is that
it was originally developed for HBASE integration where OR expressions
might not translate well.  Having other data sources with custom indexes
(or relational databases for that matter) would benefit from being able to
handle a wider spectrum of expression.

Thanks,
Petter

Reply via email to