@Internal public final class ArrowPythonScalarFunctionFlatMap extends AbstractPythonScalarFunctionFlatMap
RichFlatMapFunction
used to invoke Arrow Python ScalarFunction
functions for
the old planner.scalarFunctions
bais, baisWrapper, forwardedInputQueue, forwardedInputSerializer, inputType, jobOptions, outputType, resultCollector, userDefinedFunctionInputType, userDefinedFunctionOutputType, userDefinedFunctionResultQueue, userDefinedFunctionTypeSerializer
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.
|
PythonFunctionRunner<Row> |
createPythonFunctionRunner() |
void |
emitResults() |
void |
open(Configuration parameters)
Initialization method for the function.
|
bufferInput, getForwardedFieldsCount, getPythonEnv
createPythonEnvironmentManager, flatMap, getFlinkMetricContainer, 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 PythonFunctionRunner<Row> createPythonFunctionRunner() throws IOException
createPythonFunctionRunner
in class AbstractPythonStatelessFunctionFlatMap
IOException
public void emitResults() throws IOException
emitResults
in class AbstractPythonStatelessFunctionFlatMap
IOException
Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.