public abstract class TableFunctionResolver extends Object
GenericUDAFResolver. Break up the responsibility of the
old AbstractTableFunction class into a Resolver and Evaluator.
The Resolver is responsible for:
tableFunctionEvaluator
TableFunctionDef. This provides information
about the arguments to the function, the shape of the Input partition and the Partitioning details.
FunctionRegistry. The Resolver is initialized
by the following 4 step process:
PTFDesc and the TableFunctionDef.
| Constructor and Description |
|---|
TableFunctionResolver() |
public void initialize(HiveConf cfg, PTFDesc ptfDesc, PartitionedTableFunctionDef tDef) throws SemanticException
SemanticExceptionpublic void initialize(PTFDesc ptfDesc, PartitionedTableFunctionDef tDef, TableFunctionEvaluator evaluator) throws HiveException
HiveExceptionpublic TableFunctionEvaluator getEvaluator()
public abstract void setupOutputOI()
throws SemanticException
SemanticExceptionpublic abstract List<String> getOutputColumnNames() throws SemanticException
SemanticExceptionpublic abstract void initializeOutputOI()
throws HiveException
Expression Nodes
exist for all the Def (ArgDef, ColumnDef, WindowDef..). It is the responsibility of
the TableFunction to construct the evaluators and setup the OI.tblFuncDef - ptfDesc - HiveExceptionpublic void setupRawInputOI()
throws SemanticException
SemanticExceptionpublic List<String> getRawInputColumnNames() throws SemanticException
SemanticExceptionpublic void initializeRawInputOI()
throws HiveException
HiveExceptionprotected void setRawInputOI(StructObjectInspector rawInputOI)
protected void setOutputOI(StructObjectInspector outputOI)
public PTFDesc getPtfDesc()
public boolean carryForwardNames()
public abstract boolean transformsRawInput()
protected abstract TableFunctionEvaluator createEvaluator(PTFDesc ptfDesc, PartitionedTableFunctionDef tDef)
public List<String> getReferencedColumns() throws SemanticException
SemanticExceptionCopyright © 2019 The Apache Software Foundation. All Rights Reserved.