@Internal public final class ArrowPythonScalarFunctionFlatMap extends AbstractPythonScalarFunctionFlatMap
RichFlatMapFunction
used to invoke Arrow Python ScalarFunction
functions for
the old planner.scalarFunctions
bais, baisWrapper, baos, forwardedInputQueue, forwardedInputSerializer, inputType, jobOptions, outputType, pythonFunctionRunner, resultCollector, userDefinedFunctionInputType, userDefinedFunctionOutputType
Constructor and Description |
---|
ArrowPythonScalarFunctionFlatMap(Configuration config,
PythonFunctionInfo[] scalarFunctions,
RowType inputType,
RowType outputType,
int[] udfInputOffsets,
int[] forwardedFields) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Tear-down method for the user code.
|
void |
emitResult(Tuple2<byte[],Integer> resultTuple) |
String |
getInputOutputCoderUrn() |
protected void |
invokeFinishBundle() |
void |
open(Configuration parameters)
Initialization method for the function.
|
void |
processElementInternal(Row value) |
bufferInput, getForwardedFieldsCount, getFunctionUrn, getPythonEnv, getUserDefinedFunctionsProto
checkInvokeFinishBundleByCount, createPythonEnvironmentManager, flatMap, getFlinkMetricContainer, getFunctionInput, getProducedType, getPythonConfig
getIterationRuntimeContext, getRuntimeContext, setRuntimeContext
public ArrowPythonScalarFunctionFlatMap(Configuration config, PythonFunctionInfo[] scalarFunctions, RowType inputType, RowType outputType, int[] udfInputOffsets, int[] forwardedFields)
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 AbstractPythonScalarFunctionFlatMap
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 void close() throws Exception
RichFunction
This method can be used for clean up work.
close
in interface RichFunction
close
in class AbstractPythonStatelessFunctionFlatMap
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.public void emitResult(Tuple2<byte[],Integer> resultTuple) throws IOException
emitResult
in class AbstractPythonStatelessFunctionFlatMap
IOException
public String getInputOutputCoderUrn()
getInputOutputCoderUrn
in class AbstractPythonStatelessFunctionFlatMap
public void processElementInternal(Row value) throws Exception
processElementInternal
in class AbstractPythonStatelessFunctionFlatMap
Exception
protected void invokeFinishBundle() throws Exception
invokeFinishBundle
in class AbstractPythonStatelessFunctionFlatMap
Exception
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.