Add object type (#1948)
Add a new type: Object. Currently, it's mainly for complex aggregate metrics(HLL , Bitmap). The Object type has the following constraints: 1 Object type could not as key column type 2 Object type doesn't support all indices (BloomFilter, short key, zone map, invert index) 3 Object type doesn't support filter and group by In the implementation: The Object type reuse the StringValue and StringVal, because in storage engine, the Object type is binary, it has a pointer and length.
This commit is contained in:
@ -335,10 +335,11 @@ void* ExprContext::get_value(Expr* e, TupleRow* row) {
|
||||
}
|
||||
case TYPE_CHAR:
|
||||
case TYPE_VARCHAR:
|
||||
case TYPE_HLL: {
|
||||
case TYPE_HLL:
|
||||
case TYPE_OBJECT: {
|
||||
doris_udf::StringVal v = e->get_string_val(this, row);
|
||||
if (v.is_null) {
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
_result.string_val.ptr = reinterpret_cast<char*>(v.ptr);
|
||||
_result.string_val.len = v.len;
|
||||
|
||||
Reference in New Issue
Block a user