private Double rankingOr(RexNode e) {
      Double selectivity = selectivityEstimator.estimateSelectivity(e);
      if (selectivity == null) {
        return null;
      }
      Double costPerTuple = costPerTuple(e);
      if (costPerTuple == null) {
        return null;
      }
      return -selectivity / costPerTuple;
    }
Nodes in an OR clause are sorted by a rank value calculated as:
rank = (-selectivity) / cost per tuple
The intuition is that less selective/cheaper conditions should be evaluated
first in the OR clause, since TRUE will end the evaluation.
ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveFilterSortPredicates.java