public class POLocalRearrange extends PhysicalOperator
PhysicalOperator.OriginalLocation
Modifier and Type | Field and Description |
---|---|
protected byte |
index |
protected Result |
inp |
protected boolean |
isCross |
protected byte |
keyType |
protected java.util.List<ExpressionOperator> |
leafOps |
protected byte |
mainKeyType |
protected Tuple |
mFakeTuple |
protected boolean |
mIsDistinct |
protected static TupleFactory |
mTupleFactory |
protected java.util.List<PhysicalPlan> |
plans |
protected byte |
secondaryKeyType |
protected java.util.List<ExpressionOperator> |
secondaryLeafOps |
protected java.util.List<PhysicalPlan> |
secondaryPlans |
protected static long |
serialVersionUID |
alias, illustrator, input, inputAttached, inputs, lineageTracer, outputs, parentPlan, pigLogger, reporter, requestedParallelism, res, RESULT_EMPTY, RESULT_EOP, resultType
Constructor and Description |
---|
POLocalRearrange(OperatorKey k) |
POLocalRearrange(OperatorKey k,
int rp) |
POLocalRearrange(OperatorKey k,
int rp,
java.util.List<PhysicalOperator> inp) |
POLocalRearrange(OperatorKey k,
java.util.List<PhysicalOperator> inp) |
POLocalRearrange(POLocalRearrange copy) |
Modifier and Type | Method and Description |
---|---|
void |
attachInput(Tuple t)
Overridden since the attachment of the new input should cause the old
processing to end.
|
POLocalRearrange |
clone()
Make a deep copy of this operator.
|
protected Tuple |
constructLROutput(java.util.List<Result> resLst,
java.util.List<Result> secondaryResLst,
Tuple value) |
protected void |
deepCopyTo(POLocalRearrange clone) |
byte |
getIndex() |
protected java.lang.Object |
getKeyFromResult(java.util.List<Result> resLst,
byte type) |
byte |
getKeyType() |
byte |
getMainKeyType() |
Result |
getNextTuple()
Calls getNext on the generate operator inside the nested
physical plan.
|
java.util.List<PhysicalPlan> |
getPlans() |
java.util.Map<java.lang.Integer,java.lang.Integer> |
getProjectedColsMap() |
java.util.Map<java.lang.Integer,java.lang.Integer> |
getSecondaryProjectedColsMap() |
Tuple |
illustratorMarkup(java.lang.Object in,
java.lang.Object out,
int eqClassIndex)
input tuple mark up to be illustrate-able
|
boolean |
isCross() |
boolean |
isDistinct() |
boolean |
isKeyCompound() |
boolean |
isKeyTuple() |
boolean |
isProjectStar() |
boolean |
isSecondaryKeyTuple() |
boolean |
isSecondaryProjectStar() |
java.lang.String |
name() |
void |
setCross(boolean isCross) |
void |
setDistinct(boolean isDistinct) |
void |
setIndex(int index)
Sets the co-group index of this operator
|
void |
setKeyType(byte keyType) |
void |
setMultiQueryIndex(int index)
Sets the multi-query index of this operator
|
void |
setPlans(java.util.List<PhysicalPlan> plans) |
void |
setPlansFromCombiner(java.util.List<PhysicalPlan> plans) |
void |
setSecondaryPlans(java.util.List<PhysicalPlan> plans) |
protected void |
setStripKeyFromValue(boolean stripKeyFromValue) |
void |
setUseSecondaryKey(boolean useSecondaryKey) |
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, 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, setAccumEnd, setAccumStart, setAccumulative, setIllustrator, setInputs, setParentPlan, setPigLogger, setReporter, setRequestedParallelism, setResultType, staticDataCleanup
compareTo, equals, getOperatorKey, getProjectionMap, hashCode, regenerateProjectionMap, rewire, toString, unsetProjectionMap
protected static final long serialVersionUID
protected static final TupleFactory mTupleFactory
protected java.util.List<PhysicalPlan> plans
protected java.util.List<PhysicalPlan> secondaryPlans
protected java.util.List<ExpressionOperator> leafOps
protected java.util.List<ExpressionOperator> secondaryLeafOps
protected byte index
protected byte keyType
protected byte mainKeyType
protected byte secondaryKeyType
protected boolean mIsDistinct
protected boolean isCross
protected Result inp
protected Tuple mFakeTuple
public POLocalRearrange(OperatorKey k)
public POLocalRearrange(OperatorKey k, int rp)
public POLocalRearrange(OperatorKey k, java.util.List<PhysicalOperator> inp)
public POLocalRearrange(OperatorKey k, int rp, java.util.List<PhysicalOperator> inp)
public POLocalRearrange(POLocalRearrange copy)
public void visit(PhyPlanVisitor v) throws VisitorException
Operator
visit
in class PhysicalOperator
v
- Visitor to visit with.VisitorException
- if the visitor has a problem.public java.lang.String name()
name
in class Operator<PhyPlanVisitor>
public boolean supportsMultipleInputs()
Operator
supportsMultipleInputs
in class Operator<PhyPlanVisitor>
public boolean supportsMultipleOutputs()
Operator
supportsMultipleOutputs
in class Operator<PhyPlanVisitor>
public byte getIndex()
public void setIndex(int index) throws ExecException
index
- the position of this operator in
a co-group operationExecException
- if the index value is bigger then 0x7Fpublic void setMultiQueryIndex(int index) throws ExecException
index
- the position of the parent plan of this operator
in the enclosed split operatorExecException
- if the index value is bigger then 0x7Fpublic boolean isDistinct()
public void setDistinct(boolean isDistinct)
public void attachInput(Tuple t)
attachInput
in class PhysicalOperator
t
- -
The tuple that should be used as inputpublic Result getNextTuple() throws ExecException
getNextTuple
in class PhysicalOperator
ExecException
protected java.lang.Object getKeyFromResult(java.util.List<Result> resLst, byte type) throws ExecException
ExecException
protected Tuple constructLROutput(java.util.List<Result> resLst, java.util.List<Result> secondaryResLst, Tuple value) throws ExecException
ExecException
public byte getKeyType()
public byte getMainKeyType()
public void setKeyType(byte keyType)
public java.util.List<PhysicalPlan> getPlans()
public void setUseSecondaryKey(boolean useSecondaryKey)
public void setPlans(java.util.List<PhysicalPlan> plans) throws PlanException
PlanException
public void setSecondaryPlans(java.util.List<PhysicalPlan> plans) throws PlanException
PlanException
public POLocalRearrange clone() throws java.lang.CloneNotSupportedException
clone
in class PhysicalOperator
java.lang.CloneNotSupportedException
Do not use the clone method directly. Operators are cloned when logical plans
are cloned using {@link LogicalPlanCloner}
protected void deepCopyTo(POLocalRearrange clone) throws java.lang.CloneNotSupportedException
java.lang.CloneNotSupportedException
public boolean isCross()
public void setCross(boolean isCross)
public java.util.Map<java.lang.Integer,java.lang.Integer> getProjectedColsMap()
public java.util.Map<java.lang.Integer,java.lang.Integer> getSecondaryProjectedColsMap()
public boolean isProjectStar()
public boolean isSecondaryProjectStar()
public boolean isKeyTuple()
public boolean isKeyCompound()
public boolean isSecondaryKeyTuple()
public void setPlansFromCombiner(java.util.List<PhysicalPlan> plans) throws PlanException
plans
- ExecException
PlanException
protected void setStripKeyFromValue(boolean stripKeyFromValue)
public Tuple illustratorMarkup(java.lang.Object in, java.lang.Object out, int eqClassIndex)
Illustrable
in
- input tupleout
- output tuple before wrapped in ExampleTupleeqClassIndex
- index into equivalence classes in illustratorCopyright © 2007-2012 The Apache Software Foundation