@Internal public final class PythonTableFunctionFlatMap extends AbstractPythonStatelessFunctionFlatMap
RichFlatMapFunction
used to invoke Python TableFunction
functions for the old
planner.bais, baisWrapper, baos, forwardedInputQueue, forwardedInputSerializer, inputType, jobOptions, outputType, pythonFunctionRunner, resultCollector, userDefinedFunctionInputType, userDefinedFunctionOutputType
Constructor and Description |
---|
PythonTableFunctionFlatMap(Configuration config,
PythonFunctionInfo tableFunction,
RowType inputType,
RowType outputType,
int[] udtfInputOffsets,
org.apache.calcite.rel.core.JoinRelType joinType) |
Modifier and Type | Method and Description |
---|---|
void |
bufferInput(Row input) |
void |
emitResult(Tuple2<byte[],Integer> resultTuple) |
int |
getForwardedFieldsCount() |
String |
getFunctionUrn() |
String |
getInputOutputCoderUrn() |
PythonEnv |
getPythonEnv()
Returns the
PythonEnv used to create PythonEnvironmentManager.. |
FlinkFnApi.UserDefinedFunctions |
getUserDefinedFunctionsProto()
Gets the proto representation of the Python user-defined functions to be executed.
|
void |
open(Configuration parameters)
Initialization method for the function.
|
void |
processElementInternal(Row value) |
checkInvokeFinishBundleByCount, close, createPythonEnvironmentManager, flatMap, getFlinkMetricContainer, getFunctionInput, getProducedType, getPythonConfig, invokeFinishBundle
getIterationRuntimeContext, getRuntimeContext, setRuntimeContext
public PythonTableFunctionFlatMap(Configuration config, PythonFunctionInfo tableFunction, RowType inputType, RowType outputType, int[] udtfInputOffsets, org.apache.calcite.rel.core.JoinRelType joinType)
public void open(Configuration parameters) throws Exception
RichFunction
The configuration object passed to the function can be used for configuration and initialization. The configuration contains all parameters that were configured on the function in the program composition.
public class MyFilter extends RichFilterFunction<String> {
private String searchString;
public void open(Configuration parameters) {
this.searchString = parameters.getString("foo");
}
public boolean filter(String value) {
return value.equals(searchString);
}
}
By default, this method does nothing.
open
in interface RichFunction
open
in class AbstractPythonStatelessFunctionFlatMap
parameters
- The configuration containing the parameters attached to the contract.Exception
- Implementations may forward exceptions, which are caught by the runtime.
When the runtime catches an exception, it aborts the task and lets the fail-over logic
decide whether to retry the task execution.Configuration
public PythonEnv getPythonEnv()
AbstractPythonStatelessFunctionFlatMap
PythonEnv
used to create PythonEnvironmentManager..getPythonEnv
in class AbstractPythonStatelessFunctionFlatMap
public void bufferInput(Row input)
bufferInput
in class AbstractPythonStatelessFunctionFlatMap
public void emitResult(Tuple2<byte[],Integer> resultTuple) throws Exception
emitResult
in class AbstractPythonStatelessFunctionFlatMap
Exception
public int getForwardedFieldsCount()
getForwardedFieldsCount
in class AbstractPythonStatelessFunctionFlatMap
public FlinkFnApi.UserDefinedFunctions getUserDefinedFunctionsProto()
AbstractPythonStatelessFunctionFlatMap
getUserDefinedFunctionsProto
in class AbstractPythonStatelessFunctionFlatMap
public String getInputOutputCoderUrn()
getInputOutputCoderUrn
in class AbstractPythonStatelessFunctionFlatMap
public String getFunctionUrn()
getFunctionUrn
in class AbstractPythonStatelessFunctionFlatMap
public void processElementInternal(Row value) throws Exception
processElementInternal
in class AbstractPythonStatelessFunctionFlatMap
Exception
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.