When there are multiple predicates in RexSimplify, only the first predicates will be used to simplify the RexNode. The following test can reproduce.
// RexProgramTest.java @Test public void testSimplifyRangeWithMultiPredicates() { final RexNode ref = input(tInt(), 0); RelOptPredicateList relOptPredicateList = RelOptPredicateList.of(rexBuilder, ImmutableList.of(gt(ref, literal(1)), le(ref, literal(5)))); checkSimplifyFilter(gt(ref, literal(9)), relOptPredicateList, "false"); }
- links to