Class AbstractFragmentManager
java.lang.Object
org.apache.drill.exec.work.fragment.AbstractFragmentManager
- All Implemented Interfaces:
FragmentManager
- Direct Known Subclasses:
NonRootFragmentManager,RootFragmentManager
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final IncomingBuffersprotected booleanprotected final ExecutorFragmentContextprotected final FragmentExecutorprotected final ExecProtos.FragmentHandle -
Constructor Summary
ConstructorsConstructorDescriptionAbstractFragmentManager(BitControl.PlanFragment fragment, FragmentExecutor executor, FragmentStatusReporter statusReporter) AbstractFragmentManager(BitControl.PlanFragment fragment, FragmentExecutor executor, FragmentStatusReporter statusReporter, FragmentRoot rootOperator) -
Method Summary
Modifier and TypeMethodDescriptionvoidcancel()Get the fragment runner for this incoming fragment.booleanhandle(IncomingDataBatch batch) Handle the next incoming record batch.booleanFind out if the FragmentManager has been cancelled.booleanabstract voidvoidunpause()If the executor is paused (for testing), this method should unpause the executor.
-
Field Details
-
buffers
-
fragmentExecutor
-
fragmentHandle
-
fragmentContext
-
cancel
protected volatile boolean cancel
-
-
Constructor Details
-
AbstractFragmentManager
public AbstractFragmentManager(BitControl.PlanFragment fragment, FragmentExecutor executor, FragmentStatusReporter statusReporter, FragmentRoot rootOperator) -
AbstractFragmentManager
public AbstractFragmentManager(BitControl.PlanFragment fragment, FragmentExecutor executor, FragmentStatusReporter statusReporter)
-
-
Method Details
-
handle
Description copied from interface:FragmentManagerHandle the next incoming record batch.- Specified by:
handlein interfaceFragmentManager- Parameters:
batch-- Returns:
- True if the fragment has enough incoming data to be able to be run.
- Throws:
FragmentSetupExceptionIOException
-
isCancelled
public boolean isCancelled()Description copied from interface:FragmentManagerFind out if the FragmentManager has been cancelled.- Specified by:
isCancelledin interfaceFragmentManager- Returns:
- true if the FragmentManager has been cancelled.
-
unpause
public void unpause()Description copied from interface:FragmentManagerIf the executor is paused (for testing), this method should unpause the executor. This method should handle multiple calls.- Specified by:
unpausein interfaceFragmentManager
-
getHandle
- Specified by:
getHandlein interfaceFragmentManager
-
isWaiting
public boolean isWaiting()- Specified by:
isWaitingin interfaceFragmentManager
-
getFragmentContext
- Specified by:
getFragmentContextin interfaceFragmentManager
-
getRunnable
Description copied from interface:FragmentManagerGet the fragment runner for this incoming fragment. Note, this can only be requested once.- Specified by:
getRunnablein interfaceFragmentManager- Returns:
-
receivingFragmentFinished
- Specified by:
receivingFragmentFinishedin interfaceFragmentManager
-
cancel
public void cancel()- Specified by:
cancelin interfaceFragmentManager
-