/** * Set all of the {@code inputs} as predecessors of the {@code operatorContext} each of the {@code outputs}. * * @param inputs input {@link ChannelInstance}s * @param executionLineageNode in-between {@link ExecutionLineageNode} * @param outputs output {@link ChannelInstance}s * @see #addPredecessor(LazyExecutionLineageNode) */ public static void connectAll(ChannelInstance[] inputs, ExecutionLineageNode executionLineageNode, ChannelInstance[] outputs) { for (ChannelInstance input : inputs) { if (input != null) executionLineageNode.addPredecessor(input.getLineage()); } for (ChannelInstance output : outputs) { if (output != null) output.getLineage().addPredecessor(executionLineageNode); } }
probeTable.getOrDefault(keyExtractor1.apply(dataQuantum1), Collections.emptyList()).stream() .map(dataQuantum0 -> new Tuple2<>(dataQuantum0, dataQuantum1))); indexingExecutionLineageNode.addPredecessor(inputs[0].getLineage()); indexingExecutionLineageNode.collectAndMark(executionLineageNodes, producedChannelInstances); probingExecutionLineageNode.addPredecessor(inputs[1].getLineage()); } else { final int expectedNumElements = cardinalityEstimate1 == null ? probeTable.getOrDefault(keyExtractor0.apply(dataQuantum0), Collections.emptyList()).stream() .map(dataQuantum1 -> new Tuple2<>(dataQuantum0, dataQuantum1))); indexingExecutionLineageNode.addPredecessor(inputs[1].getLineage()); indexingExecutionLineageNode.collectAndMark(executionLineageNodes, producedChannelInstances); probingExecutionLineageNode.addPredecessor(inputs[0].getLineage());
materializedInput = inputs[0]; probingInput = inputs[1]; probingExecutionLineageNode.addPredecessor(materializedInput.getLineage()); materializedInput = inputs[1]; probingInput = inputs[0]; probingExecutionLineageNode.addPredecessor(materializedInput.getLineage()); materializedInput = inputs[0]; probingInput = inputs[1]; indexingExecutionLineageNode.addPredecessor(materializedInput.getLineage()); indexingExecutionLineageNode.collectAndMark(executionLineageNodes, producedChannelInstances); materializedInput = inputs[1]; probingInput = inputs[0]; indexingExecutionLineageNode.addPredecessor(materializedInput.getLineage()); indexingExecutionLineageNode.collectAndMark(executionLineageNodes, producedChannelInstances); probingExecutionLineageNode.addPredecessor(probingInput.getLineage()); output.getLineage().addPredecessor(probingExecutionLineageNode); return new Tuple<>(executionLineageNodes, producedChannelInstances);
candidateStream = ((JavaChannelInstance) inputs[0]).provideStream(); probingTable = this.createProbingTable(((JavaChannelInstance) inputs[1]).provideStream()); indexingExecutionLineageNode.addPredecessor(inputs[0].getLineage()); probingExecutionLineageNode.addPredecessor(inputs[1].getLineage()); } else { candidateStream = ((JavaChannelInstance) inputs[1]).provideStream(); probingTable = this.createProbingTable(((JavaChannelInstance) inputs[0]).provideStream()); indexingExecutionLineageNode.addPredecessor(inputs[1].getLineage()); probingExecutionLineageNode.addPredecessor(inputs[0].getLineage());
"rheem.graphchi.pagerank.load.main", configuration )); mainExecutionLineage.addPredecessor(inputFileChannelInstance.getLineage());
executionLineageNode.addPredecessor(inputs[CONVERGENCE_INPUT_INDEX].getLineage()); endloop = stoppingCondition.test(convergenceCollection); input = (JavaChannelInstance) inputs[ITERATION_INPUT_INDEX];
throw new RheemException(String.format("Could not evaluate stopping condition for %s.", this), e); executionLineageNode.addPredecessor(convergenceInput.getLineage()); break; default:
executionLineageNode.addPredecessor(inputs[ITERATION_CONVERGENCE_INPUT_INDEX].getLineage()); break; default:
executionLineageNode.addPredecessor(inputs[ITERATION_CONVERGENCE_INPUT_INDEX].getLineage());