[Bug] [Bitmap] change to_bitmap to always_not_nullable (#9716)

This commit is contained in:
Pxl
2022-05-28 17:33:55 +08:00
committed by GitHub
parent 92c1c82422
commit f33ef32d92
5 changed files with 22 additions and 23 deletions

View File

@ -366,17 +366,17 @@ BigIntVal BitmapFunctions::bitmap_min(FunctionContext* ctx, const StringVal& src
StringVal BitmapFunctions::to_bitmap(doris_udf::FunctionContext* ctx,
const doris_udf::StringVal& src) {
if (src.is_null) {
return StringVal::null();
}
StringParser::ParseResult parse_result = StringParser::PARSE_SUCCESS;
uint64_t int_value = StringParser::string_to_unsigned_int<uint64_t>(
reinterpret_cast<char*>(src.ptr), src.len, &parse_result);
if (UNLIKELY(parse_result != StringParser::PARSE_SUCCESS)) {
return StringVal::null();
}
BitmapValue bitmap;
bitmap.add(int_value);
if (!src.is_null) {
StringParser::ParseResult parse_result = StringParser::PARSE_SUCCESS;
uint64_t int_value = StringParser::string_to_unsigned_int<uint64_t>(
reinterpret_cast<char*>(src.ptr), src.len, &parse_result);
if (parse_result == StringParser::PARSE_SUCCESS) {
bitmap.add(int_value);
}
}
return serialize(ctx, &bitmap);
}