Package eu.stratosphere.compiler.plan

Examples of eu.stratosphere.compiler.plan.WorksetPlanNode


        }
        pspn.setContainingIterationNode((BulkIterationPlanNode) iteration);
      }
      else if (visitable instanceof WorksetPlanNode) {
        // tell the partial solution about the iteration node that contains it
        final WorksetPlanNode wspn = (WorksetPlanNode) visitable;
        final IterationPlanNode iteration = this.stackOfIterationNodes.peekLast();
       
        // sanity check!
        if (iteration == null || !(iteration instanceof WorksetIterationPlanNode)) {
          throw new CompilerException("Bug: Error finalizing the plan. " +
              "Cannot associate the node for a partial solutions with its containing iteration.");
        }
        wspn.setContainingIterationNode((WorksetIterationPlanNode) iteration);
      }
      else if (visitable instanceof SolutionSetPlanNode) {
        // tell the partial solution about the iteration node that contains it
        final SolutionSetPlanNode sspn = (SolutionSetPlanNode) visitable;
        final IterationPlanNode iteration = this.stackOfIterationNodes.peekLast();
View Full Code Here


 
  public void setCandidateProperties(GlobalProperties gProps, LocalProperties lProps, Channel initialInput) {
    if (this.cachedPlans != null) {
      throw new IllegalStateException();
    } else {
      WorksetPlanNode wspn = new WorksetPlanNode(this, "Workset ("+this.getPactContract().getName()+")", gProps, lProps, initialInput);
      this.cachedPlans = Collections.<PlanNode>singletonList(wspn);
    }
  }
View Full Code Here

    //    This concerns currently only the workset.
    this.worksetNode.setCandidateProperties(worksetIn.getGlobalProperties(), worksetIn.getLocalProperties(), worksetIn);
    this.solutionSetNode.setCandidateProperties(this.partitionedProperties, new LocalProperties(), solutionSetIn);
   
    final SolutionSetPlanNode sspn = this.solutionSetNode.getCurrentSolutionSetPlanNode();
    final WorksetPlanNode wspn = this.worksetNode.getCurrentWorksetPlanNode();
   
    // 3) Get the alternative plans
    List<PlanNode> solutionSetDeltaCandidates = this.solutionSetDelta.getAlternativePlans(estimator);
    List<PlanNode> worksetCandidates = this.nextWorkset.getAlternativePlans(estimator);
   
View Full Code Here

        }
        name = "solution set of workset iteration '" +
            ssn.getSolutionSetNode().getIterationNode().getPactContract().getName() + "'";
      }
      else if (node instanceof WorksetPlanNode) {
        WorksetPlanNode wsn = (WorksetPlanNode) node;
        if (wsn.postPassHelper == null) {
          schema = createEmptySchema();
          wsn.postPassHelper = schema;
        } else {
          schema = (T) wsn.postPassHelper;
        }
        name = "workset of workset iteration '" +
            wsn.getWorksetNode().getIterationNode().getPactContract().getName() + "'";
      } else {
        throw new CompilerException();
      }
     
      schema.increaseNumConnectionsThatContributed();
View Full Code Here

        inConns = ((BulkPartialSolutionPlanNode) node).getContainingIterationNode().getInputs();
        // because the partial solution has its own vertex, is has only one (logical) input.
        // note this in the task configuration
        targetVertexConfig.setIterationHeadPartialSolutionOrWorksetInputIndex(0);
      } else if (node instanceof WorksetPlanNode) {
        WorksetPlanNode wspn = (WorksetPlanNode) node;
        // input that is the initial workset
        inConns = Collections.singleton(wspn.getContainingIterationNode().getInput2()).iterator();
       
        // because we have a stand-alone (non-merged) workset iteration head, the initial workset will
        // be input 0 and the solution set will be input 1
        targetVertexConfig.setIterationHeadPartialSolutionOrWorksetInputIndex(0);
        targetVertexConfig.setIterationHeadSolutionSetInputIndex(1);
View Full Code Here

        allInChannels = Collections.singletonList(input).iterator();
      }
    } else if (inputPlanNode instanceof WorksetPlanNode) {
      if (this.vertices.get(inputPlanNode) == null) {
        // merged iteration head
        final WorksetPlanNode wspn = (WorksetPlanNode) inputPlanNode;
        final WorksetIterationPlanNode iterationNode = wspn.getContainingIterationNode();
       
        // check if the iteration's input is a union
        if (iterationNode.getInput2().getSource() instanceof NAryUnionPlanNode) {
          allInChannels = ((NAryUnionPlanNode) iterationNode.getInput2().getSource()).getInputs();
        } else {
View Full Code Here

TOP

Related Classes of eu.stratosphere.compiler.plan.WorksetPlanNode

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.