Impala
Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
com.cloudera.impala.catalog.AggregateFunction Class Reference
Inheritance diagram for com.cloudera.impala.catalog.AggregateFunction:
Collaboration diagram for com.cloudera.impala.catalog.AggregateFunction:

Public Member Functions

 AggregateFunction (FunctionName fnName, ArrayList< Type > argTypes, Type retType, boolean hasVarArgs)
 
 AggregateFunction (FunctionName fnName, List< Type > argTypes, Type retType, Type intermediateType, HdfsUri location, String updateFnSymbol, String initFnSymbol, String serializeFnSymbol, String mergeFnSymbol, String getValueFnSymbol, String removeFnSymbol, String finalizeFnSymbol)
 
String getUpdateFnSymbol ()
 
String getInitFnSymbol ()
 
String getSerializeFnSymbol ()
 
String getMergeFnSymbol ()
 
String getGetValueFnSymbol ()
 
String getRemoveFnSymbol ()
 
String getFinalizeFnSymbol ()
 
boolean ignoresDistinct ()
 
boolean isAnalyticFn ()
 
boolean isAggregateFn ()
 
boolean returnsNonNullOnEmpty ()
 
Type getIntermediateType ()
 
void setUpdateFnSymbol (String fn)
 
void setInitFnSymbol (String fn)
 
void setSerializeFnSymbol (String fn)
 
void setMergeFnSymbol (String fn)
 
void setGetValueFnSymbol (String fn)
 
void setRemoveFnSymbol (String fn)
 
void setFinalizeFnSymbol (String fn)
 
void setIntermediateType (Type t)
 
TFunction toThrift ()
 
FunctionName getFunctionName ()
 
String functionName ()
 
String dbName ()
 
Type getReturnType ()
 
Type[] getArgs ()
 
int getNumArgs ()
 
HdfsUri getLocation ()
 
TFunctionBinaryType getBinaryType ()
 
boolean hasVarArgs ()
 
boolean userVisible ()
 
Type getVarArgsType ()
 
void setName (FunctionName name)
 
void setLocation (HdfsUri loc)
 
void setBinaryType (TFunctionBinaryType type)
 
void setHasVarArgs (boolean v)
 
void setUserVisible (boolean b)
 
String signatureString ()
 
boolean equals (Object o)
 
boolean compare (Function other, CompareMode mode)
 
Function promoteCharsToStrings ()
 
Function selectClosestSuperType (List< Function > candidates)
 
TCatalogObjectType getCatalogObjectType ()
 
long getCatalogVersion ()
 
void setCatalogVersion (long newVersion)
 
String getName ()
 
boolean isLoaded ()
 
String lookupSymbol (String symbol, TSymbolType symbolType, Type retArgType, boolean hasVarArgs, Type...argTypes) throws AnalysisException
 
String lookupSymbol (String symbol, TSymbolType symbolType) throws AnalysisException
 

Static Public Member Functions

static AggregateFunction createBuiltin (Db db, String name, List< Type > argTypes, Type retType, Type intermediateType, String initFnSymbol, String updateFnSymbol, String mergeFnSymbol, String serializeFnSymbol, String finalizeFnSymbol, boolean ignoresDistinct, boolean isAnalyticFn, boolean returnsNonNullOnEmpty)
 
static AggregateFunction createBuiltin (Db db, String name, List< Type > argTypes, Type retType, Type intermediateType, String initFnSymbol, String updateFnSymbol, String mergeFnSymbol, String serializeFnSymbol, String getValueFnSymbol, String removeFnSymbol, String finalizeFnSymbol, boolean ignoresDistinct, boolean isAnalyticFn, boolean returnsNonNullOnEmpty)
 
static AggregateFunction createAnalyticBuiltin (Db db, String name, List< Type > argTypes, Type retType, Type intermediateType)
 
static AggregateFunction createAnalyticBuiltin (Db db, String name, List< Type > argTypes, Type retType, Type intermediateType, String initFnSymbol, String updateFnSymbol, String removeFnSymbol, String getValueFnSymbol, String finalizeFnSymbol)
 
static AggregateFunction createAnalyticBuiltin (Db db, String name, List< Type > argTypes, Type retType, Type intermediateType, String initFnSymbol, String updateFnSymbol, String removeFnSymbol, String getValueFnSymbol, String finalizeFnSymbol, boolean isUserVisible)
 
static Function fromThrift (TFunction fn)
 
static String getUdfType (Type t)
 

Private Attributes

Type intermediateType_
 
String updateFnSymbol_
 
String initFnSymbol_
 
String serializeFnSymbol_
 
String mergeFnSymbol_
 
String getValueFnSymbol_
 
String removeFnSymbol_
 
String finalizeFnSymbol_
 
boolean ignoresDistinct_
 
boolean isAnalyticFn_
 
boolean isAggregateFn_
 
boolean returnsNonNullOnEmpty_
 

Static Private Attributes

static String BE_BUILTINS_CLASS = "AggregateFunctions"
 

Detailed Description

Internal representation of an aggregate function. TODO: Create separate AnalyticFunction class

Definition at line 30 of file AggregateFunction.java.

Constructor & Destructor Documentation

com.cloudera.impala.catalog.AggregateFunction.AggregateFunction ( FunctionName  fnName,
ArrayList< Type argTypes,
Type  retType,
boolean  hasVarArgs 
)
inline

Member Function Documentation

boolean com.cloudera.impala.catalog.Function.compare ( Function  other,
CompareMode  mode 
)
inlineinherited
static AggregateFunction com.cloudera.impala.catalog.AggregateFunction.createAnalyticBuiltin ( Db  db,
String  name,
List< Type argTypes,
Type  retType,
Type  intermediateType 
)
inlinestatic
static AggregateFunction com.cloudera.impala.catalog.AggregateFunction.createAnalyticBuiltin ( Db  db,
String  name,
List< Type argTypes,
Type  retType,
Type  intermediateType,
String  initFnSymbol,
String  updateFnSymbol,
String  removeFnSymbol,
String  getValueFnSymbol,
String  finalizeFnSymbol 
)
inlinestatic
static AggregateFunction com.cloudera.impala.catalog.AggregateFunction.createAnalyticBuiltin ( Db  db,
String  name,
List< Type argTypes,
Type  retType,
Type  intermediateType,
String  initFnSymbol,
String  updateFnSymbol,
String  removeFnSymbol,
String  getValueFnSymbol,
String  finalizeFnSymbol,
boolean  isUserVisible 
)
inlinestatic
static AggregateFunction com.cloudera.impala.catalog.AggregateFunction.createBuiltin ( Db  db,
String  name,
List< Type argTypes,
Type  retType,
Type  intermediateType,
String  initFnSymbol,
String  updateFnSymbol,
String  mergeFnSymbol,
String  serializeFnSymbol,
String  finalizeFnSymbol,
boolean  ignoresDistinct,
boolean  isAnalyticFn,
boolean  returnsNonNullOnEmpty 
)
inlinestatic

Definition at line 95 of file AggregateFunction.java.

static AggregateFunction com.cloudera.impala.catalog.AggregateFunction.createBuiltin ( Db  db,
String  name,
List< Type argTypes,
Type  retType,
Type  intermediateType,
String  initFnSymbol,
String  updateFnSymbol,
String  mergeFnSymbol,
String  serializeFnSymbol,
String  getValueFnSymbol,
String  removeFnSymbol,
String  finalizeFnSymbol,
boolean  ignoresDistinct,
boolean  isAnalyticFn,
boolean  returnsNonNullOnEmpty 
)
inlinestatic
boolean com.cloudera.impala.catalog.Function.equals ( Object  o)
inlineinherited
static Function com.cloudera.impala.catalog.Function.fromThrift ( TFunction  fn)
inlinestaticinherited
String com.cloudera.impala.catalog.Function.functionName ( )
inlineinherited
Type [] com.cloudera.impala.catalog.Function.getArgs ( )
inlineinherited
TFunctionBinaryType com.cloudera.impala.catalog.Function.getBinaryType ( )
inlineinherited
TCatalogObjectType com.cloudera.impala.catalog.Function.getCatalogObjectType ( )
inlineinherited

Implements com.cloudera.impala.catalog.CatalogObject.

Definition at line 283 of file Function.java.

long com.cloudera.impala.catalog.Function.getCatalogVersion ( )
inlineinherited
String com.cloudera.impala.catalog.AggregateFunction.getFinalizeFnSymbol ( )
inline
FunctionName com.cloudera.impala.catalog.Function.getFunctionName ( )
inlineinherited
String com.cloudera.impala.catalog.AggregateFunction.getGetValueFnSymbol ( )
inline
String com.cloudera.impala.catalog.AggregateFunction.getInitFnSymbol ( )
inline
Type com.cloudera.impala.catalog.AggregateFunction.getIntermediateType ( )
inline

Returns the intermediate type of this aggregate function or null if it is identical to the return type.

Definition at line 170 of file AggregateFunction.java.

References com.cloudera.impala.catalog.AggregateFunction.intermediateType_.

HdfsUri com.cloudera.impala.catalog.Function.getLocation ( )
inlineinherited

Definition at line 122 of file Function.java.

References com.cloudera.impala.catalog.Function.location_.

String com.cloudera.impala.catalog.AggregateFunction.getMergeFnSymbol ( )
inline
String com.cloudera.impala.catalog.Function.getName ( )
inlineinherited
int com.cloudera.impala.catalog.Function.getNumArgs ( )
inlineinherited
String com.cloudera.impala.catalog.AggregateFunction.getRemoveFnSymbol ( )
inline
String com.cloudera.impala.catalog.AggregateFunction.getSerializeFnSymbol ( )
inline
static String com.cloudera.impala.catalog.Function.getUdfType ( Type  t)
inlinestaticinherited
String com.cloudera.impala.catalog.AggregateFunction.getUpdateFnSymbol ( )
inline
boolean com.cloudera.impala.catalog.AggregateFunction.ignoresDistinct ( )
inline
boolean com.cloudera.impala.catalog.AggregateFunction.isAggregateFn ( )
inline
boolean com.cloudera.impala.catalog.AggregateFunction.isAnalyticFn ( )
inline
boolean com.cloudera.impala.catalog.Function.isLoaded ( )
inlineinherited

Implements com.cloudera.impala.catalog.CatalogObject.

Definition at line 342 of file Function.java.

String com.cloudera.impala.catalog.Function.lookupSymbol ( String  symbol,
TSymbolType  symbolType,
Type  retArgType,
boolean  hasVarArgs,
Type...  argTypes 
) throws AnalysisException
inlineinherited
String com.cloudera.impala.catalog.Function.lookupSymbol ( String  symbol,
TSymbolType  symbolType 
) throws AnalysisException
inlineinherited
boolean com.cloudera.impala.catalog.AggregateFunction.returnsNonNullOnEmpty ( )
inline
Function com.cloudera.impala.catalog.Function.selectClosestSuperType ( List< Function candidates)
inlineinherited

Given a list of functions which are a super type of this function, select the best match. This is the one which requires the fewest type promotions.

Definition at line 212 of file Function.java.

References com.cloudera.impala.catalog.Function.isIndistinguishable(), and com.cloudera.impala.catalog.Function.promoteCharsToStrings().

void com.cloudera.impala.catalog.Function.setBinaryType ( TFunctionBinaryType  type)
inlineinherited

Definition at line 134 of file Function.java.

References com.cloudera.impala.catalog.Function.binaryType_.

void com.cloudera.impala.catalog.Function.setCatalogVersion ( long  newVersion)
inlineinherited
void com.cloudera.impala.catalog.AggregateFunction.setFinalizeFnSymbol ( String  fn)
inline
void com.cloudera.impala.catalog.AggregateFunction.setGetValueFnSymbol ( String  fn)
inline
void com.cloudera.impala.catalog.Function.setHasVarArgs ( boolean  v)
inlineinherited

Definition at line 135 of file Function.java.

References com.cloudera.impala.catalog.Function.hasVarArgs_.

void com.cloudera.impala.catalog.AggregateFunction.setInitFnSymbol ( String  fn)
inline
void com.cloudera.impala.catalog.AggregateFunction.setIntermediateType ( Type  t)
inline
void com.cloudera.impala.catalog.Function.setLocation ( HdfsUri  loc)
inlineinherited
void com.cloudera.impala.catalog.AggregateFunction.setMergeFnSymbol ( String  fn)
inline
void com.cloudera.impala.catalog.Function.setName ( FunctionName  name)
inlineinherited

Definition at line 132 of file Function.java.

References impala.name, and com.cloudera.impala.catalog.Function.name_.

void com.cloudera.impala.catalog.AggregateFunction.setRemoveFnSymbol ( String  fn)
inline
void com.cloudera.impala.catalog.AggregateFunction.setSerializeFnSymbol ( String  fn)
inline
void com.cloudera.impala.catalog.AggregateFunction.setUpdateFnSymbol ( String  fn)
inline
void com.cloudera.impala.catalog.Function.setUserVisible ( boolean  b)
inlineinherited

Definition at line 136 of file Function.java.

References com.cloudera.impala.catalog.Function.userVisible_.

boolean com.cloudera.impala.catalog.Function.userVisible ( )
inlineinherited

Member Data Documentation

String com.cloudera.impala.catalog.AggregateFunction.BE_BUILTINS_CLASS = "AggregateFunctions"
staticprivate

Definition at line 44 of file AggregateFunction.java.

boolean com.cloudera.impala.catalog.AggregateFunction.isAggregateFn_
private
boolean com.cloudera.impala.catalog.AggregateFunction.isAnalyticFn_
private
boolean com.cloudera.impala.catalog.AggregateFunction.returnsNonNullOnEmpty_
private

The documentation for this class was generated from the following file: