Package io.prestosql.operator
Class LookupJoinOperatorFactory
- java.lang.Object
-
- io.prestosql.operator.LookupJoinOperatorFactory
-
- All Implemented Interfaces:
JoinOperatorFactory
,OperatorFactory
,WorkProcessorOperatorAdapter.AdapterWorkProcessorOperatorFactory
,WorkProcessorOperatorFactory
public class LookupJoinOperatorFactory extends Object implements JoinOperatorFactory, WorkProcessorOperatorAdapter.AdapterWorkProcessorOperatorFactory
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.prestosql.operator.JoinOperatorFactory
JoinOperatorFactory.OuterOperatorFactoryResult
-
-
Constructor Summary
Constructors Constructor Description LookupJoinOperatorFactory(int operatorId, PlanNodeId planNodeId, JoinBridgeManager<? extends LookupSourceFactory> lookupSourceFactoryManager, List<Type> probeTypes, List<Type> probeOutputTypes, List<Type> buildOutputTypes, LookupJoinOperators.JoinType joinType, JoinProbe.JoinProbeFactory joinProbeFactory, BlockTypeOperators blockTypeOperators, OptionalInt totalOperatorsCount, List<Integer> probeJoinChannels, OptionalInt probeHashChannel, PartitioningSpillerFactory partitioningSpillerFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
WorkProcessorOperator
create(ProcessorContext processorContext, WorkProcessor<Page> sourcePages)
WorkProcessorOperatorAdapter.AdapterWorkProcessorOperator
createAdapterOperator(ProcessorContext processorContext)
Operator
createOperator(DriverContext driverContext)
Optional<JoinOperatorFactory.OuterOperatorFactoryResult>
createOuterOperatorFactory()
LookupJoinOperatorFactory
duplicate()
int
getOperatorId()
String
getOperatorType()
PlanNodeId
getPlanNodeId()
void
lifespanFinished(Lifespan lifespan)
void
noMoreOperators()
Declare that createOperator will not be called any more and release any resources associated with this factory.void
noMoreOperators(Lifespan lifespan)
Declare that createOperator will not be called any more for the specified Lifespan, and release any resources associated with this factory.
-
-
-
Constructor Detail
-
LookupJoinOperatorFactory
public LookupJoinOperatorFactory(int operatorId, PlanNodeId planNodeId, JoinBridgeManager<? extends LookupSourceFactory> lookupSourceFactoryManager, List<Type> probeTypes, List<Type> probeOutputTypes, List<Type> buildOutputTypes, LookupJoinOperators.JoinType joinType, JoinProbe.JoinProbeFactory joinProbeFactory, BlockTypeOperators blockTypeOperators, OptionalInt totalOperatorsCount, List<Integer> probeJoinChannels, OptionalInt probeHashChannel, PartitioningSpillerFactory partitioningSpillerFactory)
-
-
Method Detail
-
createOuterOperatorFactory
public Optional<JoinOperatorFactory.OuterOperatorFactoryResult> createOuterOperatorFactory()
- Specified by:
createOuterOperatorFactory
in interfaceJoinOperatorFactory
-
createOperator
public Operator createOperator(DriverContext driverContext)
- Specified by:
createOperator
in interfaceOperatorFactory
-
noMoreOperators
public void noMoreOperators()
Description copied from interface:OperatorFactory
Declare that createOperator will not be called any more and release any resources associated with this factory.This method will be called only once. Implementation doesn't need to worry about duplicate invocations.
It is guaranteed that this will only be invoked after
OperatorFactory.noMoreOperators(Lifespan)
has been invoked for all applicable driver groups.- Specified by:
noMoreOperators
in interfaceOperatorFactory
-
noMoreOperators
public void noMoreOperators(Lifespan lifespan)
Description copied from interface:OperatorFactory
Declare that createOperator will not be called any more for the specified Lifespan, and release any resources associated with this factory.This method will be called only once for each Lifespan. Implementation doesn't need to worry about duplicate invocations.
It is guaranteed that this method will be invoked for all applicable driver groups before
OperatorFactory.noMoreOperators()
is invoked.- Specified by:
noMoreOperators
in interfaceOperatorFactory
-
getOperatorId
public int getOperatorId()
- Specified by:
getOperatorId
in interfaceWorkProcessorOperatorFactory
-
getPlanNodeId
public PlanNodeId getPlanNodeId()
- Specified by:
getPlanNodeId
in interfaceWorkProcessorOperatorFactory
-
getOperatorType
public String getOperatorType()
- Specified by:
getOperatorType
in interfaceWorkProcessorOperatorFactory
-
create
public WorkProcessorOperator create(ProcessorContext processorContext, WorkProcessor<Page> sourcePages)
- Specified by:
create
in interfaceWorkProcessorOperatorFactory
-
createAdapterOperator
public WorkProcessorOperatorAdapter.AdapterWorkProcessorOperator createAdapterOperator(ProcessorContext processorContext)
- Specified by:
createAdapterOperator
in interfaceWorkProcessorOperatorAdapter.AdapterWorkProcessorOperatorFactory
-
lifespanFinished
public void lifespanFinished(Lifespan lifespan)
- Specified by:
lifespanFinished
in interfaceWorkProcessorOperatorFactory
-
close
public void close()
- Specified by:
close
in interfaceWorkProcessorOperatorFactory
-
duplicate
public LookupJoinOperatorFactory duplicate()
- Specified by:
duplicate
in interfaceOperatorFactory
- Specified by:
duplicate
in interfaceWorkProcessorOperatorAdapter.AdapterWorkProcessorOperatorFactory
-
-