public class POForEach extends PhysicalOperator
PhysicalOperator.OriginalLocation| Modifier and Type | Field and Description |
|---|---|
protected java.lang.Object[] |
bags |
protected AccumulativeTupleBuffer |
buffer |
protected java.lang.Object[] |
data |
protected java.util.BitSet |
earlyTermination |
protected Tuple |
inpTuple |
protected java.util.List<PhysicalPlan> |
inputPlans |
protected boolean[] |
isToBeFlattenedArray |
protected java.util.Iterator<Tuple>[] |
its |
protected boolean |
mapSideOnly |
protected int |
noItems |
protected java.util.List<PhysicalOperator> |
opsToBeReset |
protected PhysicalOperator[] |
planLeafOps |
protected boolean |
processingPlan |
protected byte[] |
resultTypes |
alias, illustrator, input, inputAttached, inputs, lineageTracer, outputs, parentPlan, pigLogger, reporter, requestedParallelism, res, RESULT_EMPTY, RESULT_EOP, resultType| Constructor and Description |
|---|
POForEach(OperatorKey k) |
POForEach(OperatorKey k,
int rp) |
POForEach(OperatorKey k,
int rp,
java.util.List<PhysicalPlan> inp,
java.util.List<java.lang.Boolean> isToBeFlattened) |
POForEach(OperatorKey operatorKey,
int requestedParallelism,
java.util.List<PhysicalPlan> innerPlans,
java.util.List<java.lang.Boolean> flattenList,
Schema schema) |
POForEach(OperatorKey k,
java.util.List inp) |
| Modifier and Type | Method and Description |
|---|---|
void |
addInputPlan(PhysicalPlan plan,
boolean flatten) |
protected void |
attachInputToPlans(Tuple t) |
POForEach |
clone()
Make a deep copy of this operator.
|
protected Tuple |
createTuple(java.lang.Object[] data) |
java.util.List<PhysicalPlan> |
getInputPlans() |
void |
getLeaves() |
Result |
getNextTuple()
Calls getNext on the generate operator inside the nested
physical plan and returns it maintaining an additional state
to denote the begin and end of the nested plan processing.
|
java.util.List<PhysicalOperator> |
getOpsToBeReset() |
java.util.List<java.lang.Boolean> |
getToBeFlattened() |
Tuple |
illustratorMarkup(java.lang.Object in,
java.lang.Object out,
int eqClassIndex)
input tuple mark up to be illustrate-able
|
boolean |
inProcessing() |
boolean |
isMapSideOnly() |
java.lang.String |
name() |
protected Result |
processPlan() |
void |
setAccumEnd() |
void |
setAccumStart() |
void |
setAccumulative() |
void |
setInputPlans(java.util.List<PhysicalPlan> plans) |
void |
setMapSideOnly(boolean mapSideOnly) |
void |
setOpsToBeReset(java.util.List<PhysicalOperator> opsToBeReset) |
void |
setToBeFlattened(java.util.List<java.lang.Boolean> flattens) |
protected void |
setUpFlattens(java.util.List<java.lang.Boolean> isToBeFlattened) |
boolean |
supportsMultipleInputs()
Indicates whether this operator supports multiple inputs.
|
boolean |
supportsMultipleOutputs()
Indicates whether this operator supports multiple outputs.
|
void |
visit(PhyPlanVisitor v)
Visit this node with the provided visitor.
|
addOriginalLocation, addOriginalLocation, attachInput, cloneHelper, copyAliasFrom, detachInput, getAlias, getAliasString, getIllustrator, getInputs, getLogger, getNext, getNextBigDecimal, getNextBigInteger, getNextBoolean, getNextDataBag, getNextDataByteArray, getNextDateTime, getNextDouble, getNextFloat, getNextInteger, getNextLong, getNextMap, getNextString, getOriginalLocations, getPigLogger, getReporter, getRequestedParallelism, getResultType, isAccumStarted, isAccumulative, isBlocking, isInputAttached, processInput, reset, setIllustrator, setInputs, setParentPlan, setPigLogger, setReporter, setRequestedParallelism, setResultType, staticDataCleanupcompareTo, equals, getOperatorKey, getProjectionMap, hashCode, regenerateProjectionMap, rewire, toString, unsetProjectionMapprotected java.util.List<PhysicalPlan> inputPlans
protected java.util.List<PhysicalOperator> opsToBeReset
protected boolean processingPlan
protected transient java.util.Iterator<Tuple>[] its
protected java.lang.Object[] bags
protected java.lang.Object[] data
protected byte[] resultTypes
protected java.util.BitSet earlyTermination
protected boolean[] isToBeFlattenedArray
protected int noItems
protected PhysicalOperator[] planLeafOps
protected transient AccumulativeTupleBuffer buffer
protected Tuple inpTuple
protected boolean mapSideOnly
public POForEach(OperatorKey k)
public POForEach(OperatorKey k, int rp)
public POForEach(OperatorKey k, java.util.List inp)
public POForEach(OperatorKey k, int rp, java.util.List<PhysicalPlan> inp, java.util.List<java.lang.Boolean> isToBeFlattened)
public POForEach(OperatorKey operatorKey, int requestedParallelism, java.util.List<PhysicalPlan> innerPlans, java.util.List<java.lang.Boolean> flattenList, Schema schema)
public void visit(PhyPlanVisitor v) throws VisitorException
Operatorvisit in class PhysicalOperatorv - Visitor to visit with.VisitorException - if the visitor has a problem.public java.lang.String name()
name in class Operator<PhyPlanVisitor>public boolean supportsMultipleInputs()
OperatorsupportsMultipleInputs in class Operator<PhyPlanVisitor>public boolean supportsMultipleOutputs()
OperatorsupportsMultipleOutputs in class Operator<PhyPlanVisitor>public void setAccumulative()
setAccumulative in class PhysicalOperatorpublic void setAccumStart()
setAccumStart in class PhysicalOperatorpublic void setAccumEnd()
setAccumEnd in class PhysicalOperatorpublic Result getNextTuple() throws ExecException
getNextTuple in class PhysicalOperatorExecExceptionprotected Result processPlan() throws ExecException
ExecExceptionprotected Tuple createTuple(java.lang.Object[] data) throws ExecException
data - array that is the template for the final flattened tupleExecExceptionprotected void attachInputToPlans(Tuple t)
public void getLeaves()
public java.util.List<PhysicalPlan> getInputPlans()
public void setInputPlans(java.util.List<PhysicalPlan> plans)
public void addInputPlan(PhysicalPlan plan, boolean flatten)
public void setToBeFlattened(java.util.List<java.lang.Boolean> flattens)
public java.util.List<java.lang.Boolean> getToBeFlattened()
public POForEach clone() throws java.lang.CloneNotSupportedException
clone in class PhysicalOperatorjava.lang.CloneNotSupportedExceptionDo not use the clone method directly. Operators are cloned when logical plans
are cloned using {@link LogicalPlanCloner}public boolean inProcessing()
protected void setUpFlattens(java.util.List<java.lang.Boolean> isToBeFlattened)
public java.util.List<PhysicalOperator> getOpsToBeReset()
public void setOpsToBeReset(java.util.List<PhysicalOperator> opsToBeReset)
opsToBeReset - the opsToBeReset to setpublic Tuple illustratorMarkup(java.lang.Object in, java.lang.Object out, int eqClassIndex)
Illustrablein - input tupleout - output tuple before wrapped in ExampleTupleeqClassIndex - index into equivalence classes in illustratorpublic void setMapSideOnly(boolean mapSideOnly)
public boolean isMapSideOnly()
Copyright © 2007-2012 The Apache Software Foundation