Package io.trino.operator
Class DynamicFilterSourceOperator
- java.lang.Object
-
- io.trino.operator.DynamicFilterSourceOperator
-
- All Implemented Interfaces:
Operator,AutoCloseable
public class DynamicFilterSourceOperator extends Object implements Operator
This operator acts as a simple "pass-through" pipe, while saving its input pages. The collected pages' value are used for creating a run-time filtering constraint (for probe-side table scan in an inner join). We record all values for the run-time filter only for small build-side pages (which should be the case when using "broadcast" join). For large inputs on build side, we can optionally record the min and max values per channel for orderable types (except Double and Real).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDynamicFilterSourceOperator.Channelstatic classDynamicFilterSourceOperator.DynamicFilterSourceOperatorFactory
-
Field Summary
-
Fields inherited from interface io.trino.operator.Operator
NOT_BLOCKED
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddInput(Page page)Adds an input page to the operator.voidfinish()Notifies the operator that no more pages will be added and the operator should finish processing and flush results.OperatorContextgetOperatorContext()PagegetOutput()Gets an output page from the operator.booleanisFinished()Is this operator completely finished processing and no more output pages will be produced.booleanneedsInput()Returns true if and only if this operator can accept an input page.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.trino.operator.Operator
close, finishMemoryRevoke, isBlocked, startMemoryRevoke
-
-
-
-
Method Detail
-
getOperatorContext
public OperatorContext getOperatorContext()
- Specified by:
getOperatorContextin interfaceOperator
-
needsInput
public boolean needsInput()
Description copied from interface:OperatorReturns true if and only if this operator can accept an input page.- Specified by:
needsInputin interfaceOperator
-
addInput
public void addInput(Page page)
Description copied from interface:OperatorAdds an input page to the operator. This method will only be called ifneedsInput()returns true.
-
getOutput
public Page getOutput()
Description copied from interface:OperatorGets an output page from the operator. If no output data is currently available, return null.
-
finish
public void finish()
Description copied from interface:OperatorNotifies the operator that no more pages will be added and the operator should finish processing and flush results. This method will not be called if the Task is already failed or canceled.
-
isFinished
public boolean isFinished()
Description copied from interface:OperatorIs this operator completely finished processing and no more output pages will be produced.- Specified by:
isFinishedin interfaceOperator
-
-