kangkaisen commented on a change in pull request #2752: Add be bitmap udf 
URL: https://github.com/apache/incubator-doris/pull/2752#discussion_r366153338
 
 

 ##########
 File path: be/src/exprs/bitmap_function.cpp
 ##########
 @@ -465,6 +465,43 @@ StringVal 
BitmapFunctions::bitmap_from_string(FunctionContext* ctx, const String
     return result;
 }
 
+BooleanVal BitmapFunctions::bitmap_contains(FunctionContext *ctx, const 
StringVal &src, const IntVal &input) {
+    if (src.is_null || input.is_null) {
+        return BooleanVal::null();
+    }
+
+    if (src.len == 0) {
+        return BooleanVal(false);
+    }
+
+    RoaringBitmap bitmap;
+    bitmap.update(input.val);
+    bitmap.intersect(RoaringBitmap((char*)src.ptr));
+
+    if (bitmap.cardinality() == 1) {
+        return BooleanVal(true);
+    }
+    return BooleanVal(false);
+}
+
+BooleanVal BitmapFunctions::bitmap_has_any(FunctionContext *ctx, const 
StringVal &lhs, const StringVal &rhs) {
+    if (lhs.is_null || rhs.is_null) {
+        return BooleanVal::null();
+    }
+
+    if (lhs.len == 0 || rhs.len == 0) {
 
 Review comment:
   zero size means the src input is a object pointer

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to