22 using namespace impala;
23 using namespace impala_udf;
31 vector<IntVal> no_nulls;
32 no_nulls.resize(10000);
39 vector<IntVal> some_nulls;
40 some_nulls.resize(10000);
41 int expected = some_nulls.size();
42 for (
int i = 0; i < some_nulls.size(); i += 100) {
43 some_nulls[i] = IntVal::null();
59 vector<DoubleVal> vals;
60 for (
int i = 0; i < 1001; ++i) {
76 vector<StringVal> values;
77 values.push_back(
"Hello");
78 values.push_back(
"World");
80 vector<StringVal> separators;
81 for(
int i = 0; i < values.size(); ++i) {
82 separators.push_back(
",");
92 int main(
int argc,
char** argv) {
97 cerr << (passed ?
"Tests passed." :
"Tests failed.") << endl;
void SetIntermediateSize(int byte_size)
This must be called if the INTERMEDIATE is TYPE_FIXED_BUFFER.
bool Execute(const std::vector< INPUT1 > &values1, const std::vector< INPUT2 > &values2, const RESULT &expected, UdaExecutionMode mode=ALL)
Runs the UDA in all the modes, validating the result is 'expected' each time.
BigIntVal CountFinalize(FunctionContext *context, const BigIntVal &val)
void CountUpdate(FunctionContext *context, const IntVal &input, BigIntVal *val)
void StringConcatUpdate(FunctionContext *context, const StringVal &arg1, const StringVal &arg2, StringVal *val)
void StringConcatMerge(FunctionContext *context, const StringVal &src, StringVal *dst)
void AvgInit(FunctionContext *context, BufferVal *val)
void CountInit(FunctionContext *context, BigIntVal *val)
This is an example of the COUNT aggregate function.
StringVal StringConcatFinalize(FunctionContext *context, const StringVal &val)
bool Execute(const std::vector< INPUT > &values, const RESULT &expected, UdaExecutionMode mode=ALL)
Runs the UDA in all the modes, validating the result is 'expected' each time.
void CountMerge(FunctionContext *context, const BigIntVal &src, BigIntVal *dst)
int main(int argc, char **argv)
void StringConcatInit(FunctionContext *context, StringVal *val)
void AvgMerge(FunctionContext *context, const BufferVal &src, BufferVal *dst)
void AvgUpdate(FunctionContext *context, const DoubleVal &input, BufferVal *val)
const std::string & GetErrorMsg() const
Returns the failure string if any.
DoubleVal AvgFinalize(FunctionContext *context, const BufferVal &val)