// TODO: ExprNodeDesc is an expression tree, we could just use that and be rid of Filter.g.
if (filter == null || filter.isEmpty()) {
return ExpressionTree.EMPTY_TREE;
}
LOG.debug("Filter specified is " + filter);
ExpressionTree tree = null;
try {
tree = getFilterParser(filter).tree;
} catch (MetaException ex) {
LOG.info("Unable to make the expression tree from expression string ["
+ filter + "]" + ex.getMessage()); // Don't log the stack, this is normal.
}
if (tree == null) {
return null;
}
// We suspect that LIKE pushdown into JDO is invalid; see HIVE-5134. Check for like here.
LikeChecker lc = new LikeChecker();
tree.accept(lc);
return lc.hasLike() ? null : tree;
}