Package org.eigenbase.relopt

Examples of org.eigenbase.relopt.RelOptPredicateList


  }

  @Override
  public void onMatch(RelOptRuleCall call) {
    JoinRelBase join = call.rel(0);
    RelOptPredicateList preds = RelMetadataQuery.getPulledUpPredicates(join);

    if (preds.leftInferredPredicates.isEmpty()
        && preds.rightInferredPredicates.isEmpty()) {
      return;
    }
View Full Code Here


   *
   * </ol>
   */
  public RelOptPredicateList getPredicates(ProjectRelBase project) {
    RelNode child = project.getChild();
    RelOptPredicateList childInfo =
        RelMetadataQuery.getPulledUpPredicates(child);

    List<RexNode> projectPullUpPredicates = new ArrayList<RexNode>();

    BitSet columnsMapped = new BitSet(child.getRowType().getFieldCount());
View Full Code Here

  /**
   * Add the Filter condition to the pulledPredicates list from the child.
   */
  public RelOptPredicateList getPredicates(FilterRelBase filter) {
    RelNode child = filter.getChild();
    RelOptPredicateList childInfo =
        RelMetadataQuery.getPulledUpPredicates(child);

    return RelOptPredicateList.of(
        Iterables.concat(childInfo.pulledUpPredicates,
            RelOptUtil.conjunctions(filter.getCondition())));
View Full Code Here

  public RelOptPredicateList getPredicates(JoinRelBase join) {
    RexBuilder rB = join.getCluster().getRexBuilder();
    RelNode left = join.getInput(0);
    RelNode right = join.getInput(1);

    RelOptPredicateList leftInfo =
        RelMetadataQuery.getPulledUpPredicates(left);
    RelOptPredicateList rightInfo =
        RelMetadataQuery.getPulledUpPredicates(right);

    JoinConditionBasedPredicateInference jI =
        new JoinConditionBasedPredicateInference(join,
            RexUtil.composeConjunction(rB, leftInfo.pulledUpPredicates, false),
View Full Code Here

   * pulledUpExprs    : { a > 7}
   * </pre>
   */
  public RelOptPredicateList getPredicates(AggregateRelBase agg) {
    RelNode child = agg.getChild();
    RelOptPredicateList childInfo =
        RelMetadataQuery.getPulledUpPredicates(child);

    List<RexNode> aggPullUpPredicates = new ArrayList<RexNode>();

    BitSet groupKeys = agg.getGroupSet();
View Full Code Here

   */
  public RelOptPredicateList getPredicates(UnionRelBase union) {
    RexBuilder rB = union.getCluster().getRexBuilder();
    List<RexNode> orList = Lists.newArrayList();
    for (RelNode input : union.getInputs()) {
      RelOptPredicateList info = RelMetadataQuery.getPulledUpPredicates(input);
      if (!info.pulledUpPredicates.isEmpty()) {
        orList.addAll(
            RelOptUtil.disjunctions(
                RexUtil.composeConjunction(rB, info.pulledUpPredicates,
                    false)));
View Full Code Here

   *
   * </ol>
   */
  public RelOptPredicateList getPredicates(ProjectRelBase project) {
    RelNode child = project.getChild();
    RelOptPredicateList childInfo =
        RelMetadataQuery.getPulledUpPredicates(child);

    List<RexNode> projectPullUpPredicates = new ArrayList<RexNode>();

    BitSet columnsMapped = new BitSet(child.getRowType().getFieldCount());
View Full Code Here

  /**
   * Add the Filter condition to the pulledPredicates list from the child.
   */
  public RelOptPredicateList getPredicates(FilterRelBase filter) {
    RelNode child = filter.getChild();
    RelOptPredicateList childInfo =
        RelMetadataQuery.getPulledUpPredicates(child);

    return RelOptPredicateList.of(
        Iterables.concat(childInfo.pulledUpPredicates,
            RelOptUtil.conjunctions(filter.getCondition())));
View Full Code Here

  public RelOptPredicateList getPredicates(JoinRelBase join) {
    RexBuilder rB = join.getCluster().getRexBuilder();
    RelNode left = join.getInput(0);
    RelNode right = join.getInput(1);

    RelOptPredicateList leftInfo =
        RelMetadataQuery.getPulledUpPredicates(left);
    RelOptPredicateList rightInfo =
        RelMetadataQuery.getPulledUpPredicates(right);

    JoinConditionBasedPredicateInference jI =
        new JoinConditionBasedPredicateInference(join,
            RexUtil.composeConjunction(rB, leftInfo.pulledUpPredicates, false),
View Full Code Here

   * pulledUpExprs    : { a &gt; 7}
   * </pre>
   */
  public RelOptPredicateList getPredicates(AggregateRelBase agg) {
    RelNode child = agg.getChild();
    RelOptPredicateList childInfo =
        RelMetadataQuery.getPulledUpPredicates(child);

    List<RexNode> aggPullUpPredicates = new ArrayList<RexNode>();

    BitSet groupKeys = agg.getGroupSet();
View Full Code Here

TOP

Related Classes of org.eigenbase.relopt.RelOptPredicateList

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.