This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 773c0c5c2c0 [refactor](minor) Rename bitmap type (#51373)
773c0c5c2c0 is described below

commit 773c0c5c2c04392dd396c6554589c15c1dd9a047
Author: Gabriel <[email protected]>
AuthorDate: Sat May 31 18:06:20 2025 +0800

    [refactor](minor) Rename bitmap type (#51373)
---
 .../exec/schema_scanner/schema_columns_scanner.cpp |  4 +--
 be/src/olap/olap_common.h                          |  2 +-
 be/src/olap/partial_update_info.cpp                |  2 +-
 be/src/olap/push_handler.cpp                       |  2 +-
 be/src/olap/rowset/segment_v2/binary_plain_page.h  |  6 ++--
 .../olap/rowset/segment_v2/bitmap_index_writer.cpp |  2 +-
 be/src/olap/rowset/segment_v2/column_reader.cpp    |  6 ++--
 be/src/olap/rowset/segment_v2/column_writer.cpp    |  2 +-
 be/src/olap/rowset/segment_v2/encoding_info.cpp    |  2 +-
 be/src/olap/rowset/segment_v2/segment_writer.cpp   |  2 +-
 .../rowset/segment_v2/vertical_segment_writer.cpp  |  2 +-
 be/src/olap/rowset/segment_v2/zone_map_index.cpp   |  6 ++--
 be/src/olap/tablet_schema.cpp                      | 12 ++++----
 be/src/olap/tablet_schema.h                        |  2 +-
 be/src/olap/types.cpp                              |  6 ++--
 be/src/olap/types.h                                |  4 +--
 be/src/olap/wrapper_field.cpp                      |  4 +--
 be/src/runtime/define_primitive_type.h             |  2 +-
 be/src/runtime/fold_constant_executor.cpp          |  4 +--
 be/src/runtime/primitive_type.cpp                  | 12 ++++----
 be/src/runtime/primitive_type.h                    | 10 +++----
 be/src/runtime_filter/runtime_filter.cpp           |  2 +-
 be/src/util/arrow/row_batch.cpp                    |  2 +-
 .../aggregate_function_approx_count_distinct.cpp   |  4 +--
 .../aggregate_function_min_max.cpp                 |  2 +-
 .../aggregate_function_min_max_by.h                |  2 +-
 .../aggregate_function_reader_first_last.h         |  2 +-
 .../aggregate_function_window.cpp                  |  2 +-
 be/src/vec/columns/column_complex.h                |  4 +--
 be/src/vec/core/field.cpp                          | 24 +++++++--------
 be/src/vec/core/field.h                            |  4 +--
 be/src/vec/data_types/data_type.cpp                |  2 +-
 be/src/vec/data_types/data_type_bitmap.h           |  6 ++--
 be/src/vec/data_types/data_type_factory.cpp        |  4 +--
 be/src/vec/exec/vjdbc_connector.cpp                |  6 ++--
 be/src/vec/functions/function_bitmap.cpp           |  4 +--
 be/src/vec/functions/function_case.h               |  2 +-
 be/src/vec/functions/function_cast.h               |  2 +-
 be/src/vec/functions/function_coalesce.cpp         |  2 +-
 be/src/vec/olap/olap_data_convertor.cpp            |  4 +--
 be/src/vec/sink/vtablet_block_convertor.cpp        |  2 +-
 .../segment_v2/column_reader_writer_test.cpp       |  8 ++---
 .../runtime_filter_consumer_test.cpp               |  2 +-
 be/test/vec/core/column_complex_test.cpp           |  4 +--
 be/test/vec/data_types/data_type_bitmap_test.cpp   | 12 ++++----
 be/test/vec/function/function_bitmap_test.cpp      | 34 +++++++++++-----------
 be/test/vec/function/function_test_util.cpp        |  4 +--
 be/test/vec/jsonb/serialize_test.cpp               |  2 +-
 .../org/apache/doris/catalog/PrimitiveType.java    |  4 +--
 .../main/java/org/apache/doris/catalog/Column.java |  2 +-
 gensrc/thrift/Types.thrift                         |  2 +-
 51 files changed, 126 insertions(+), 124 deletions(-)

diff --git a/be/src/exec/schema_scanner/schema_columns_scanner.cpp 
b/be/src/exec/schema_scanner/schema_columns_scanner.cpp
index 2cc827a7b43..aa289fee3ff 100644
--- a/be/src/exec/schema_scanner/schema_columns_scanner.cpp
+++ b/be/src/exec/schema_scanner/schema_columns_scanner.cpp
@@ -147,7 +147,7 @@ std::string 
SchemaColumnsScanner::_to_mysql_data_type_string(TColumnDesc& desc)
     case TPrimitiveType::HLL: {
         return "hll";
     }
-    case TPrimitiveType::OBJECT: {
+    case TPrimitiveType::BITMAP: {
         return "bitmap";
     }
     case TPrimitiveType::JSONB: {
@@ -241,7 +241,7 @@ std::string 
SchemaColumnsScanner::_type_to_string(TColumnDesc& desc) {
     case TPrimitiveType::HLL: {
         return "hll";
     }
-    case TPrimitiveType::OBJECT: {
+    case TPrimitiveType::BITMAP: {
         return "bitmap";
     }
     case TPrimitiveType::JSONB: {
diff --git a/be/src/olap/olap_common.h b/be/src/olap/olap_common.h
index fe92bea5017..1127106d8eb 100644
--- a/be/src/olap/olap_common.h
+++ b/be/src/olap/olap_common.h
@@ -144,7 +144,7 @@ enum class FieldType {
     OLAP_FIELD_TYPE_NONE = 22,
     OLAP_FIELD_TYPE_HLL = 23,
     OLAP_FIELD_TYPE_BOOL = 24,
-    OLAP_FIELD_TYPE_OBJECT = 25,
+    OLAP_FIELD_TYPE_BITMAP = 25,
     OLAP_FIELD_TYPE_STRING = 26,
     OLAP_FIELD_TYPE_QUANTILE_STATE = 27,
     OLAP_FIELD_TYPE_DATEV2 = 28,
diff --git a/be/src/olap/partial_update_info.cpp 
b/be/src/olap/partial_update_info.cpp
index 36841bbd5a3..823a6c95eab 100644
--- a/be/src/olap/partial_update_info.cpp
+++ b/be/src/olap/partial_update_info.cpp
@@ -266,7 +266,7 @@ void 
PartialUpdateInfo::_generate_default_values_for_missing_cids(
                 DateV2Value<DateV2ValueType> dv;
                 dv.from_unixtime(timestamp_ms / 1000, timezone);
                 default_value = dv.debug_string();
-            } else if (UNLIKELY(column.type() == 
FieldType::OLAP_FIELD_TYPE_OBJECT &&
+            } else if (UNLIKELY(column.type() == 
FieldType::OLAP_FIELD_TYPE_BITMAP &&
                                 
to_lower(column.default_value()).find(to_lower("BITMAP_EMPTY")) !=
                                         std::string::npos)) {
                 BitmapValue v = BitmapValue {};
diff --git a/be/src/olap/push_handler.cpp b/be/src/olap/push_handler.cpp
index 8a0e72cbc89..57a2d835d26 100644
--- a/be/src/olap/push_handler.cpp
+++ b/be/src/olap/push_handler.cpp
@@ -492,7 +492,7 @@ Status PushBrokerReader::_cast_to_input_block() {
         auto return_type = slot_desc->get_data_type_ptr();
         idx = _src_block_name_to_idx[slot_desc->col_name()];
         // bitmap convert:src -> to_base64 -> bitmap_from_base64
-        if (slot_desc->type()->get_primitive_type() == TYPE_OBJECT) {
+        if (slot_desc->type()->get_primitive_type() == TYPE_BITMAP) {
             auto base64_return_type = 
vectorized::DataTypeFactory::instance().create_data_type(
                     PrimitiveType::TYPE_STRING, slot_desc->is_nullable());
             auto func_to_base64 = 
vectorized::SimpleFunctionFactory::instance().get_function(
diff --git a/be/src/olap/rowset/segment_v2/binary_plain_page.h 
b/be/src/olap/rowset/segment_v2/binary_plain_page.h
index 3836a58c1c2..624c0125040 100644
--- a/be/src/olap/rowset/segment_v2/binary_plain_page.h
+++ b/be/src/olap/rowset/segment_v2/binary_plain_page.h
@@ -69,7 +69,7 @@ public:
         // If the page is full, should stop adding more items.
         while (!is_page_full() && i < *count) {
             const auto* src = reinterpret_cast<const Slice*>(vals);
-            if constexpr (Type == FieldType::OLAP_FIELD_TYPE_OBJECT) {
+            if constexpr (Type == FieldType::OLAP_FIELD_TYPE_BITMAP) {
                 if (_options.need_check_bitmap) {
                     RETURN_IF_ERROR(BitmapTypeCode::validate(*(src->data)));
                 }
@@ -236,7 +236,7 @@ public:
             const uint32_t start_offset = last_offset;
             last_offset = guarded_offset(_cur_idx + 1);
             _offsets[i + 1] = last_offset;
-            if constexpr (Type == FieldType::OLAP_FIELD_TYPE_OBJECT) {
+            if constexpr (Type == FieldType::OLAP_FIELD_TYPE_BITMAP) {
                 if (_options.need_check_bitmap) {
                     RETURN_IF_ERROR(BitmapTypeCode::validate(*(_data.data + 
start_offset)));
                 }
@@ -244,7 +244,7 @@ public:
         }
         _cur_idx++;
         _offsets[max_fetch] = offset(_cur_idx);
-        if constexpr (Type == FieldType::OLAP_FIELD_TYPE_OBJECT) {
+        if constexpr (Type == FieldType::OLAP_FIELD_TYPE_BITMAP) {
             if (_options.need_check_bitmap) {
                 RETURN_IF_ERROR(BitmapTypeCode::validate(*(_data.data + 
last_offset)));
             }
diff --git a/be/src/olap/rowset/segment_v2/bitmap_index_writer.cpp 
b/be/src/olap/rowset/segment_v2/bitmap_index_writer.cpp
index 711372f61a9..0abc32f778a 100644
--- a/be/src/olap/rowset/segment_v2/bitmap_index_writer.cpp
+++ b/be/src/olap/rowset/segment_v2/bitmap_index_writer.cpp
@@ -144,7 +144,7 @@ public:
             }
 
             const auto* bitmap_type_info =
-                    get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_OBJECT>();
+                    get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_BITMAP>();
             IndexedColumnWriterOptions options;
             options.write_ordinal_index = true;
             options.write_value_index = false;
diff --git a/be/src/olap/rowset/segment_v2/column_reader.cpp 
b/be/src/olap/rowset/segment_v2/column_reader.cpp
index b8b81278b2c..5c561a31068 100644
--- a/be/src/olap/rowset/segment_v2/column_reader.cpp
+++ b/be/src/olap/rowset/segment_v2/column_reader.cpp
@@ -83,7 +83,7 @@ namespace doris::segment_v2 {
 
 inline bool read_as_string(PrimitiveType type) {
     return type == PrimitiveType::TYPE_STRING || type == 
PrimitiveType::INVALID_TYPE ||
-           type == PrimitiveType::TYPE_OBJECT;
+           type == PrimitiveType::TYPE_BITMAP;
 }
 
 Status ColumnReader::create_array(const ColumnReaderOptions& opts, const 
ColumnMetaPB& meta,
@@ -1511,7 +1511,7 @@ Status DefaultValueColumnIterator::init(const 
ColumnIteratorOptions& opts) {
             // not fill 0 to the ending, because segment iterator will shrink 
the tail 0 char
             if (_type_info->type() == FieldType::OLAP_FIELD_TYPE_VARCHAR ||
                 _type_info->type() == FieldType::OLAP_FIELD_TYPE_HLL ||
-                _type_info->type() == FieldType::OLAP_FIELD_TYPE_OBJECT ||
+                _type_info->type() == FieldType::OLAP_FIELD_TYPE_BITMAP ||
                 _type_info->type() == FieldType::OLAP_FIELD_TYPE_STRING ||
                 _type_info->type() == FieldType::OLAP_FIELD_TYPE_CHAR) {
                 ((Slice*)_mem_value.data())->size = _default_value.length();
@@ -1550,7 +1550,7 @@ void 
DefaultValueColumnIterator::insert_default_data(const TypeInfo* type_info,
     dst = dst->convert_to_predicate_column_if_dictionary();
 
     switch (type_info->type()) {
-    case FieldType::OLAP_FIELD_TYPE_OBJECT:
+    case FieldType::OLAP_FIELD_TYPE_BITMAP:
     case FieldType::OLAP_FIELD_TYPE_HLL: {
         dst->insert_many_defaults(n);
         break;
diff --git a/be/src/olap/rowset/segment_v2/column_writer.cpp 
b/be/src/olap/rowset/segment_v2/column_writer.cpp
index 22ba5194b71..d6a73dd6f51 100644
--- a/be/src/olap/rowset/segment_v2/column_writer.cpp
+++ b/be/src/olap/rowset/segment_v2/column_writer.cpp
@@ -275,7 +275,7 @@ Status ColumnWriter::create_agg_state_writer(const 
ColumnWriterOptions& opts,
     const auto* agg_state_type = assert_cast<const 
vectorized::DataTypeAggState*>(data_type.get());
     auto type = agg_state_type->get_serialized_type()->get_primitive_type();
     if (type == PrimitiveType::TYPE_STRING || type == 
PrimitiveType::INVALID_TYPE ||
-        type == PrimitiveType::TYPE_OBJECT) {
+        type == PrimitiveType::TYPE_BITMAP) {
         *writer = std::unique_ptr<ColumnWriter>(new ScalarColumnWriter(
                 opts, std::unique_ptr<Field>(FieldFactory::create(*column)), 
file_writer));
     } else if (type == PrimitiveType::TYPE_ARRAY) {
diff --git a/be/src/olap/rowset/segment_v2/encoding_info.cpp 
b/be/src/olap/rowset/segment_v2/encoding_info.cpp
index 717304637dd..c88f2a3d259 100644
--- a/be/src/olap/rowset/segment_v2/encoding_info.cpp
+++ b/be/src/olap/rowset/segment_v2/encoding_info.cpp
@@ -331,7 +331,7 @@ EncodingInfoResolver::EncodingInfoResolver() {
 
     _add_map<FieldType::OLAP_FIELD_TYPE_HLL, PLAIN_ENCODING>();
 
-    _add_map<FieldType::OLAP_FIELD_TYPE_OBJECT, PLAIN_ENCODING>();
+    _add_map<FieldType::OLAP_FIELD_TYPE_BITMAP, PLAIN_ENCODING>();
 
     _add_map<FieldType::OLAP_FIELD_TYPE_QUANTILE_STATE, PLAIN_ENCODING>();
 
diff --git a/be/src/olap/rowset/segment_v2/segment_writer.cpp 
b/be/src/olap/rowset/segment_v2/segment_writer.cpp
index 7d16f301ab5..2d44df57ed9 100644
--- a/be/src/olap/rowset/segment_v2/segment_writer.cpp
+++ b/be/src/olap/rowset/segment_v2/segment_writer.cpp
@@ -242,7 +242,7 @@ Status SegmentWriter::_create_column_writer(uint32_t cid, 
const TabletColumn& co
     DISABLE_INDEX_IF_FIELD_TYPE(JSONB, "jsonb")
     DISABLE_INDEX_IF_FIELD_TYPE(AGG_STATE, "agg_state")
     DISABLE_INDEX_IF_FIELD_TYPE(MAP, "map")
-    DISABLE_INDEX_IF_FIELD_TYPE(OBJECT, "object")
+    DISABLE_INDEX_IF_FIELD_TYPE(BITMAP, "object")
     DISABLE_INDEX_IF_FIELD_TYPE(HLL, "hll")
     DISABLE_INDEX_IF_FIELD_TYPE(QUANTILE_STATE, "quantile_state")
     DISABLE_INDEX_IF_FIELD_TYPE(VARIANT, "variant")
diff --git a/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp 
b/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp
index d639c89bbca..f86f9674877 100644
--- a/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp
+++ b/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp
@@ -240,7 +240,7 @@ Status 
VerticalSegmentWriter::_create_column_writer(uint32_t cid, const TabletCo
     DISABLE_INDEX_IF_FIELD_TYPE(JSONB, "jsonb")
     DISABLE_INDEX_IF_FIELD_TYPE(AGG_STATE, "agg_state")
     DISABLE_INDEX_IF_FIELD_TYPE(MAP, "map")
-    DISABLE_INDEX_IF_FIELD_TYPE(OBJECT, "object")
+    DISABLE_INDEX_IF_FIELD_TYPE(BITMAP, "object")
     DISABLE_INDEX_IF_FIELD_TYPE(HLL, "hll")
     DISABLE_INDEX_IF_FIELD_TYPE(QUANTILE_STATE, "quantile_state")
     DISABLE_INDEX_IF_FIELD_TYPE(VARIANT, "variant")
diff --git a/be/src/olap/rowset/segment_v2/zone_map_index.cpp 
b/be/src/olap/rowset/segment_v2/zone_map_index.cpp
index 9249c82aedf..9e054ce2e09 100644
--- a/be/src/olap/rowset/segment_v2/zone_map_index.cpp
+++ b/be/src/olap/rowset/segment_v2/zone_map_index.cpp
@@ -123,7 +123,7 @@ Status 
TypedZoneMapIndexWriter<Type>::finish(io::FileWriter* file_writer,
     _segment_zone_map.to_proto(meta->mutable_segment_zone_map(), _field);
 
     // write out zone map for each data pages
-    const auto* type_info = 
get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_OBJECT>();
+    const auto* type_info = 
get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_BITMAP>();
     IndexedColumnWriterOptions options;
     options.write_ordinal_index = true;
     options.write_value_index = false;
@@ -161,8 +161,8 @@ Status ZoneMapIndexReader::_load(bool use_page_cache, bool 
kept_in_memory,
     // read and cache all page zone maps
     for (int i = 0; i < reader.num_values(); ++i) {
         size_t num_to_read = 1;
-        // The type of reader is FieldType::OLAP_FIELD_TYPE_OBJECT.
-        // ColumnBitmap will be created when using 
FieldType::OLAP_FIELD_TYPE_OBJECT.
+        // The type of reader is FieldType::OLAP_FIELD_TYPE_BITMAP.
+        // ColumnBitmap will be created when using 
FieldType::OLAP_FIELD_TYPE_BITMAP.
         // But what we need actually is ColumnString.
         vectorized::MutableColumnPtr column = 
vectorized::ColumnString::create();
 
diff --git a/be/src/olap/tablet_schema.cpp b/be/src/olap/tablet_schema.cpp
index eba684424b0..5f355677fdc 100644
--- a/be/src/olap/tablet_schema.cpp
+++ b/be/src/olap/tablet_schema.cpp
@@ -98,8 +98,8 @@ FieldType TabletColumn::get_field_type_by_type(PrimitiveType 
primitiveType) {
         return FieldType::OLAP_FIELD_TYPE_HLL;
     case PrimitiveType::TYPE_DECIMALV2:
         return FieldType::OLAP_FIELD_TYPE_UNKNOWN; // Not implemented
-    case PrimitiveType::TYPE_OBJECT:
-        return FieldType::OLAP_FIELD_TYPE_OBJECT;
+    case PrimitiveType::TYPE_BITMAP:
+        return FieldType::OLAP_FIELD_TYPE_BITMAP;
     case PrimitiveType::TYPE_STRING:
         return FieldType::OLAP_FIELD_TYPE_STRING;
     case PrimitiveType::TYPE_QUANTILE_STATE:
@@ -202,7 +202,9 @@ FieldType TabletColumn::get_field_type_by_string(const 
std::string& type_str) {
     } else if (0 == upper_type_str.compare("MAP")) {
         type = FieldType::OLAP_FIELD_TYPE_MAP;
     } else if (0 == upper_type_str.compare("OBJECT")) {
-        type = FieldType::OLAP_FIELD_TYPE_OBJECT;
+        type = FieldType::OLAP_FIELD_TYPE_BITMAP;
+    } else if (0 == upper_type_str.compare("BITMAP")) {
+        type = FieldType::OLAP_FIELD_TYPE_BITMAP;
     } else if (0 == upper_type_str.compare("ARRAY")) {
         type = FieldType::OLAP_FIELD_TYPE_ARRAY;
     } else if (0 == upper_type_str.compare("QUANTILE_STATE")) {
@@ -351,7 +353,7 @@ std::string 
TabletColumn::get_string_by_field_type(FieldType type) {
     case FieldType::OLAP_FIELD_TYPE_MAP:
         return "MAP";
 
-    case FieldType::OLAP_FIELD_TYPE_OBJECT:
+    case FieldType::OLAP_FIELD_TYPE_BITMAP:
         return "OBJECT";
     case FieldType::OLAP_FIELD_TYPE_QUANTILE_STATE:
         return "QUANTILE_STATE";
@@ -426,7 +428,7 @@ uint32_t 
TabletColumn::get_field_length_by_type(TPrimitiveType::type type, uint3
     case TPrimitiveType::DOUBLE:
         return 8;
     case TPrimitiveType::QUANTILE_STATE:
-    case TPrimitiveType::OBJECT:
+    case TPrimitiveType::BITMAP:
         return 16;
     case TPrimitiveType::CHAR:
         return string_length;
diff --git a/be/src/olap/tablet_schema.h b/be/src/olap/tablet_schema.h
index ed3925d0966..d7d7f041db1 100644
--- a/be/src/olap/tablet_schema.h
+++ b/be/src/olap/tablet_schema.h
@@ -99,7 +99,7 @@ public:
                _type == FieldType::OLAP_FIELD_TYPE_VARCHAR ||
                _type == FieldType::OLAP_FIELD_TYPE_STRING ||
                _type == FieldType::OLAP_FIELD_TYPE_HLL ||
-               _type == FieldType::OLAP_FIELD_TYPE_OBJECT ||
+               _type == FieldType::OLAP_FIELD_TYPE_BITMAP ||
                _type == FieldType::OLAP_FIELD_TYPE_QUANTILE_STATE ||
                _type == FieldType::OLAP_FIELD_TYPE_AGG_STATE;
     }
diff --git a/be/src/olap/types.cpp b/be/src/olap/types.cpp
index 771223e2ca5..bd21bf0da32 100644
--- a/be/src/olap/types.cpp
+++ b/be/src/olap/types.cpp
@@ -48,7 +48,7 @@ bool is_olap_string_type(FieldType field_type) {
     case FieldType::OLAP_FIELD_TYPE_CHAR:
     case FieldType::OLAP_FIELD_TYPE_VARCHAR:
     case FieldType::OLAP_FIELD_TYPE_HLL:
-    case FieldType::OLAP_FIELD_TYPE_OBJECT:
+    case FieldType::OLAP_FIELD_TYPE_BITMAP:
     case FieldType::OLAP_FIELD_TYPE_STRING:
     case FieldType::OLAP_FIELD_TYPE_JSONB:
         return true;
@@ -85,7 +85,7 @@ const TypeInfo* get_scalar_type_info(FieldType field_type) {
             nullptr,
             get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_HLL>(),
             get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_BOOL>(),
-            get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_OBJECT>(),
+            get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_BITMAP>(),
             get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_STRING>(),
             get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_QUANTILE_STATE>(),
             get_scalar_type_info<FieldType::OLAP_FIELD_TYPE_DATEV2>(),
@@ -161,7 +161,7 @@ const TypeInfo* get_array_type_info(FieldType leaf_type, 
int32_t iterations) {
             {nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 
nullptr, nullptr},
             INIT_ARRAY_TYPE_INFO_LIST(FieldType::OLAP_FIELD_TYPE_HLL),
             INIT_ARRAY_TYPE_INFO_LIST(FieldType::OLAP_FIELD_TYPE_BOOL),
-            INIT_ARRAY_TYPE_INFO_LIST(FieldType::OLAP_FIELD_TYPE_OBJECT),
+            INIT_ARRAY_TYPE_INFO_LIST(FieldType::OLAP_FIELD_TYPE_BITMAP),
             INIT_ARRAY_TYPE_INFO_LIST(FieldType::OLAP_FIELD_TYPE_STRING),
             
INIT_ARRAY_TYPE_INFO_LIST(FieldType::OLAP_FIELD_TYPE_QUANTILE_STATE),
             INIT_ARRAY_TYPE_INFO_LIST(FieldType::OLAP_FIELD_TYPE_DATEV2),
diff --git a/be/src/olap/types.h b/be/src/olap/types.h
index e0d4324a360..b3aa6c7aa84 100644
--- a/be/src/olap/types.h
+++ b/be/src/olap/types.h
@@ -757,7 +757,7 @@ struct CppTypeTraits<FieldType::OLAP_FIELD_TYPE_HLL> {
     using CppType = Slice;
 };
 template <>
-struct CppTypeTraits<FieldType::OLAP_FIELD_TYPE_OBJECT> {
+struct CppTypeTraits<FieldType::OLAP_FIELD_TYPE_BITMAP> {
     using CppType = Slice;
 };
 template <>
@@ -1498,7 +1498,7 @@ struct FieldTypeTraits<FieldType::OLAP_FIELD_TYPE_HLL>
         : public FieldTypeTraits<FieldType::OLAP_FIELD_TYPE_VARCHAR> {};
 
 template <>
-struct FieldTypeTraits<FieldType::OLAP_FIELD_TYPE_OBJECT>
+struct FieldTypeTraits<FieldType::OLAP_FIELD_TYPE_BITMAP>
         : public FieldTypeTraits<FieldType::OLAP_FIELD_TYPE_VARCHAR> {};
 
 template <>
diff --git a/be/src/olap/wrapper_field.cpp b/be/src/olap/wrapper_field.cpp
index 71386900e48..7a2514ccc27 100644
--- a/be/src/olap/wrapper_field.cpp
+++ b/be/src/olap/wrapper_field.cpp
@@ -38,7 +38,7 @@ Result<WrapperField*> WrapperField::create(const 
TabletColumn& column, uint32_t
     bool is_string_type = (column.type() == FieldType::OLAP_FIELD_TYPE_CHAR ||
                            column.type() == FieldType::OLAP_FIELD_TYPE_VARCHAR 
||
                            column.type() == FieldType::OLAP_FIELD_TYPE_HLL ||
-                           column.type() == FieldType::OLAP_FIELD_TYPE_OBJECT 
||
+                           column.type() == FieldType::OLAP_FIELD_TYPE_BITMAP 
||
                            column.type() == FieldType::OLAP_FIELD_TYPE_STRING);
     size_t max_length = column.type() == FieldType::OLAP_FIELD_TYPE_STRING
                                 ? config::string_type_length_soft_limit_bytes
@@ -81,7 +81,7 @@ WrapperField* WrapperField::create_by_type(const FieldType& 
type, int32_t var_le
     bool is_string_type =
             (type == FieldType::OLAP_FIELD_TYPE_CHAR ||
              type == FieldType::OLAP_FIELD_TYPE_VARCHAR || type == 
FieldType::OLAP_FIELD_TYPE_HLL ||
-             type == FieldType::OLAP_FIELD_TYPE_OBJECT ||
+             type == FieldType::OLAP_FIELD_TYPE_BITMAP ||
              type == FieldType::OLAP_FIELD_TYPE_STRING ||
              type == FieldType::OLAP_FIELD_TYPE_QUANTILE_STATE);
     return new WrapperField(rep, var_length, is_string_type);
diff --git a/be/src/runtime/define_primitive_type.h 
b/be/src/runtime/define_primitive_type.h
index 93713581662..81650bc94ec 100644
--- a/be/src/runtime/define_primitive_type.h
+++ b/be/src/runtime/define_primitive_type.h
@@ -50,7 +50,7 @@ enum PrimitiveType : PrimitiveNative {
 
     TYPE_TIME [[deprecated]], /*TYPE_TIMEV2*/
 
-    TYPE_OBJECT,          /* 22, bitmap */
+    TYPE_BITMAP,          /* 22, bitmap */
     TYPE_STRING,          /* 23 */
     TYPE_QUANTILE_STATE,  /* 24 */
     TYPE_DATEV2,          /* 25 */
diff --git a/be/src/runtime/fold_constant_executor.cpp 
b/be/src/runtime/fold_constant_executor.cpp
index 8a65dba38e1..fb0731f7e4e 100644
--- a/be/src/runtime/fold_constant_executor.cpp
+++ b/be/src/runtime/fold_constant_executor.cpp
@@ -67,7 +67,7 @@ namespace doris {
 static std::unordered_set<PrimitiveType> PRIMITIVE_TYPE_SET {
         TYPE_BOOLEAN,  TYPE_TINYINT, TYPE_SMALLINT,   TYPE_INT,      
TYPE_BIGINT,
         TYPE_LARGEINT, TYPE_FLOAT,   TYPE_DOUBLE,     TYPE_TIMEV2,   TYPE_CHAR,
-        TYPE_VARCHAR,  TYPE_STRING,  TYPE_HLL,        TYPE_OBJECT,   TYPE_DATE,
+        TYPE_VARCHAR,  TYPE_STRING,  TYPE_HLL,        TYPE_BITMAP,   TYPE_DATE,
         TYPE_DATETIME, TYPE_DATEV2,  TYPE_DATETIMEV2, TYPE_DECIMALV2};
 
 Status FoldConstantExecutor::fold_constant_vexpr(const TFoldConstantParams& 
params,
@@ -246,7 +246,7 @@ Status FoldConstantExecutor::_get_result(void* src, size_t 
size,
     case TYPE_VARCHAR:
     case TYPE_STRING:
     case TYPE_HLL:
-    case TYPE_OBJECT: {
+    case TYPE_BITMAP: {
         result = std::string((char*)src, size);
         break;
     }
diff --git a/be/src/runtime/primitive_type.cpp 
b/be/src/runtime/primitive_type.cpp
index e4b680f5b64..57f838cd081 100644
--- a/be/src/runtime/primitive_type.cpp
+++ b/be/src/runtime/primitive_type.cpp
@@ -114,8 +114,8 @@ PrimitiveType thrift_to_type(TPrimitiveType::type ttype) {
     case TPrimitiveType::HLL:
         return TYPE_HLL;
 
-    case TPrimitiveType::OBJECT:
-        return TYPE_OBJECT;
+    case TPrimitiveType::BITMAP:
+        return TYPE_BITMAP;
 
     case TPrimitiveType::QUANTILE_STATE:
         return TYPE_QUANTILE_STATE;
@@ -233,8 +233,8 @@ TPrimitiveType::type to_thrift(PrimitiveType ptype) {
     case TYPE_HLL:
         return TPrimitiveType::HLL;
 
-    case TYPE_OBJECT:
-        return TPrimitiveType::OBJECT;
+    case TYPE_BITMAP:
+        return TPrimitiveType::BITMAP;
 
     case TYPE_QUANTILE_STATE:
         return TPrimitiveType::QUANTILE_STATE;
@@ -343,8 +343,8 @@ std::string type_to_string(PrimitiveType t) {
     case TYPE_HLL:
         return "HLL";
 
-    case TYPE_OBJECT:
-        return "OBJECT";
+    case TYPE_BITMAP:
+        return "BITMAP";
 
     case TYPE_QUANTILE_STATE:
         return "QUANTILE_STATE";
diff --git a/be/src/runtime/primitive_type.h b/be/src/runtime/primitive_type.h
index f3ade3cd140..a7790c9def6 100644
--- a/be/src/runtime/primitive_type.h
+++ b/be/src/runtime/primitive_type.h
@@ -153,7 +153,7 @@ constexpr bool is_string_type(PrimitiveType type) {
 }
 
 constexpr bool is_var_len_object(PrimitiveType type) {
-    return type == TYPE_HLL || type == TYPE_OBJECT || type == 
TYPE_QUANTILE_STATE;
+    return type == TYPE_HLL || type == TYPE_BITMAP || type == 
TYPE_QUANTILE_STATE;
 }
 
 constexpr bool is_complex_type(PrimitiveType type) {
@@ -678,7 +678,7 @@ struct PrimitiveTypeTraits<TYPE_VARIANT> {
     static constexpr PrimitiveType AvgNearestPrimitiveType256 = TYPE_VARIANT;
 };
 template <>
-struct PrimitiveTypeTraits<TYPE_OBJECT> {
+struct PrimitiveTypeTraits<TYPE_BITMAP> {
     using CppType = BitmapValue;
     using StorageFieldType = CppType;
     using CppNativeType = CppType;
@@ -688,9 +688,9 @@ struct PrimitiveTypeTraits<TYPE_OBJECT> {
     using NearestFieldType = BitmapValue;
     using AvgNearestFieldType = BitmapValue;
     using AvgNearestFieldType256 = BitmapValue;
-    static constexpr PrimitiveType NearestPrimitiveType = TYPE_OBJECT;
-    static constexpr PrimitiveType AvgNearestPrimitiveType = TYPE_OBJECT;
-    static constexpr PrimitiveType AvgNearestPrimitiveType256 = TYPE_OBJECT;
+    static constexpr PrimitiveType NearestPrimitiveType = TYPE_BITMAP;
+    static constexpr PrimitiveType AvgNearestPrimitiveType = TYPE_BITMAP;
+    static constexpr PrimitiveType AvgNearestPrimitiveType256 = TYPE_BITMAP;
 };
 template <>
 struct PrimitiveTypeTraits<TYPE_QUANTILE_STATE> {
diff --git a/be/src/runtime_filter/runtime_filter.cpp 
b/be/src/runtime_filter/runtime_filter.cpp
index c9f6baecda6..46e870fdf35 100644
--- a/be/src/runtime_filter/runtime_filter.cpp
+++ b/be/src/runtime_filter/runtime_filter.cpp
@@ -104,7 +104,7 @@ Status RuntimeFilter::_init_with_desc(const 
TRuntimeFilterDesc* desc,
         if (_has_remote_target) {
             return Status::InternalError("bitmap filter do not support remote 
target");
         }
-        if (build_ctx->root()->data_type()->get_primitive_type() != 
PrimitiveType::TYPE_OBJECT) {
+        if (build_ctx->root()->data_type()->get_primitive_type() != 
PrimitiveType::TYPE_BITMAP) {
             return Status::InternalError("Unexpected src expr type:{} for 
bitmap filter.",
                                          
build_ctx->root()->data_type()->get_name());
         }
diff --git a/be/src/util/arrow/row_batch.cpp b/be/src/util/arrow/row_batch.cpp
index 0210bfa75e6..eac4573c4a2 100644
--- a/be/src/util/arrow/row_batch.cpp
+++ b/be/src/util/arrow/row_batch.cpp
@@ -156,7 +156,7 @@ Status convert_to_arrow_type(const vectorized::DataTypePtr& 
origin_type,
         break;
     }
     case TYPE_QUANTILE_STATE:
-    case TYPE_OBJECT:
+    case TYPE_BITMAP:
     case TYPE_HLL: {
         *result = arrow::binary();
         break;
diff --git 
a/be/src/vec/aggregate_functions/aggregate_function_approx_count_distinct.cpp 
b/be/src/vec/aggregate_functions/aggregate_function_approx_count_distinct.cpp
index b0c9b307f09..7ccfa0327bd 100644
--- 
a/be/src/vec/aggregate_functions/aggregate_function_approx_count_distinct.cpp
+++ 
b/be/src/vec/aggregate_functions/aggregate_function_approx_count_distinct.cpp
@@ -108,8 +108,8 @@ AggregateFunctionPtr 
create_aggregate_function_approx_count_distinct(
     case PrimitiveType::TYPE_VARIANT:
         return 
creator_without_type::create<AggregateFunctionApproxCountDistinct<TYPE_VARIANT>>(
                 argument_types, result_is_nullable);
-    case PrimitiveType::TYPE_OBJECT:
-        return 
creator_without_type::create<AggregateFunctionApproxCountDistinct<TYPE_OBJECT>>(
+    case PrimitiveType::TYPE_BITMAP:
+        return 
creator_without_type::create<AggregateFunctionApproxCountDistinct<TYPE_BITMAP>>(
                 argument_types, result_is_nullable);
     case PrimitiveType::TYPE_HLL:
         return 
creator_without_type::create<AggregateFunctionApproxCountDistinct<TYPE_HLL>>(
diff --git a/be/src/vec/aggregate_functions/aggregate_function_min_max.cpp 
b/be/src/vec/aggregate_functions/aggregate_function_min_max.cpp
index dfff86e27b5..a298ccd8f2d 100644
--- a/be/src/vec/aggregate_functions/aggregate_function_min_max.cpp
+++ b/be/src/vec/aggregate_functions/aggregate_function_min_max.cpp
@@ -107,7 +107,7 @@ AggregateFunctionPtr 
create_aggregate_function_single_value_any_value_function(
         argument_type->get_primitive_type() == PrimitiveType::TYPE_MAP ||
         argument_type->get_primitive_type() == PrimitiveType::TYPE_STRUCT ||
         argument_type->get_primitive_type() == PrimitiveType::TYPE_AGG_STATE ||
-        argument_type->get_primitive_type() == PrimitiveType::TYPE_OBJECT ||
+        argument_type->get_primitive_type() == PrimitiveType::TYPE_BITMAP ||
         argument_type->get_primitive_type() == PrimitiveType::TYPE_HLL ||
         argument_type->get_primitive_type() == 
PrimitiveType::TYPE_QUANTILE_STATE) {
         return creator_without_type::create<
diff --git a/be/src/vec/aggregate_functions/aggregate_function_min_max_by.h 
b/be/src/vec/aggregate_functions/aggregate_function_min_max_by.h
index 6fa8ba15eb0..5500b9bda64 100644
--- a/be/src/vec/aggregate_functions/aggregate_function_min_max_by.h
+++ b/be/src/vec/aggregate_functions/aggregate_function_min_max_by.h
@@ -364,7 +364,7 @@ AggregateFunctionPtr 
create_aggregate_function_min_max_by(const String& name,
         return 
create_aggregate_function_min_max_by_impl<AggregateFunctionTemplate, Data,
                                                          
SingleValueDataFixed<TYPE_DATETIMEV2>>(
                 argument_types, result_is_nullable);
-    case PrimitiveType::TYPE_OBJECT:
+    case PrimitiveType::TYPE_BITMAP:
         return 
create_aggregate_function_min_max_by_impl<AggregateFunctionTemplate, Data,
                                                          
BitmapValueData>(argument_types,
                                                                           
result_is_nullable);
diff --git 
a/be/src/vec/aggregate_functions/aggregate_function_reader_first_last.h 
b/be/src/vec/aggregate_functions/aggregate_function_reader_first_last.h
index 4323cba8534..cdb31964db1 100644
--- a/be/src/vec/aggregate_functions/aggregate_function_reader_first_last.h
+++ b/be/src/vec/aggregate_functions/aggregate_function_reader_first_last.h
@@ -379,7 +379,7 @@ AggregateFunctionPtr create_function_single_value(const 
String& name,
                 FunctionData<ColumnVariant, result_is_nullable, 
arg_is_nullable, is_copy>>>(
                 argument_types);
     }
-    case PrimitiveType::TYPE_OBJECT: {
+    case PrimitiveType::TYPE_BITMAP: {
         return std::make_shared<ReaderFunctionData<
                 FunctionData<ColumnBitmap, result_is_nullable, 
arg_is_nullable, is_copy>>>(
                 argument_types);
diff --git a/be/src/vec/aggregate_functions/aggregate_function_window.cpp 
b/be/src/vec/aggregate_functions/aggregate_function_window.cpp
index 48e4076fccf..b4e4a947714 100644
--- a/be/src/vec/aggregate_functions/aggregate_function_window.cpp
+++ b/be/src/vec/aggregate_functions/aggregate_function_window.cpp
@@ -303,7 +303,7 @@ AggregateFunctionPtr 
create_function_lead_lag_first_last(const String& name,
                     argument_types);
         }
     }
-    case PrimitiveType::TYPE_OBJECT: {
+    case PrimitiveType::TYPE_BITMAP: {
         if (arg_ignore_null_value) {
             return std::make_shared<AggregateFunctionTemplate<
                     Impl<Data<ColumnBitmap, result_is_nullable, 
arg_is_nullable>, true>>>(
diff --git a/be/src/vec/columns/column_complex.h 
b/be/src/vec/columns/column_complex.h
index 3c789032f23..438cd76c014 100644
--- a/be/src/vec/columns/column_complex.h
+++ b/be/src/vec/columns/column_complex.h
@@ -138,7 +138,7 @@ public:
     Field operator[](size_t n) const override {
         assert(n < size());
         if constexpr (std::is_same_v<BitmapValue, T>) {
-            return Field::create_field<TYPE_OBJECT>(data[n]);
+            return Field::create_field<TYPE_BITMAP>(data[n]);
         } else if constexpr (std::is_same_v<HyperLogLog, T>) {
             return Field::create_field<TYPE_HLL>(data[n]);
         } else if constexpr (std::is_same_v<QuantileState, T>) {
@@ -151,7 +151,7 @@ public:
     void get(size_t n, Field& res) const override {
         assert(n < size());
         if constexpr (std::is_same_v<BitmapValue, T>) {
-            res = Field::create_field<TYPE_OBJECT>(data[n]);
+            res = Field::create_field<TYPE_BITMAP>(data[n]);
         } else if constexpr (std::is_same_v<HyperLogLog, T>) {
             res = Field::create_field<TYPE_HLL>(data[n]);
         } else if constexpr (std::is_same_v<QuantileState, T>) {
diff --git a/be/src/vec/core/field.cpp b/be/src/vec/core/field.cpp
index fc9b0fd0a2e..450c12b630d 100644
--- a/be/src/vec/core/field.cpp
+++ b/be/src/vec/core/field.cpp
@@ -219,9 +219,9 @@ void Field::create(const Field& field) {
         create_concrete<TYPE_VARIANT>(
                 field.template get<typename 
PrimitiveTypeTraits<TYPE_VARIANT>::NearestFieldType>());
         return;
-    case PrimitiveType::TYPE_OBJECT:
-        create_concrete<TYPE_OBJECT>(
-                field.template get<typename 
PrimitiveTypeTraits<TYPE_OBJECT>::NearestFieldType>());
+    case PrimitiveType::TYPE_BITMAP:
+        create_concrete<TYPE_BITMAP>(
+                field.template get<typename 
PrimitiveTypeTraits<TYPE_BITMAP>::NearestFieldType>());
         return;
     case PrimitiveType::TYPE_HLL:
         create_concrete<TYPE_HLL>(
@@ -263,8 +263,8 @@ void Field::destroy() {
     case PrimitiveType::TYPE_VARIANT:
         destroy<typename 
PrimitiveTypeTraits<TYPE_VARIANT>::NearestFieldType>();
         break;
-    case PrimitiveType::TYPE_OBJECT:
-        destroy<typename PrimitiveTypeTraits<TYPE_OBJECT>::NearestFieldType>();
+    case PrimitiveType::TYPE_BITMAP:
+        destroy<typename PrimitiveTypeTraits<TYPE_BITMAP>::NearestFieldType>();
         break;
     case PrimitiveType::TYPE_HLL:
         destroy<typename PrimitiveTypeTraits<TYPE_HLL>::NearestFieldType>();
@@ -386,9 +386,9 @@ void Field::assign(const Field& field) {
         assign_concrete<TYPE_VARIANT>(
                 field.template get<typename 
PrimitiveTypeTraits<TYPE_VARIANT>::NearestFieldType>());
         return;
-    case PrimitiveType::TYPE_OBJECT:
-        assign_concrete<TYPE_OBJECT>(
-                field.template get<typename 
PrimitiveTypeTraits<TYPE_OBJECT>::NearestFieldType>());
+    case PrimitiveType::TYPE_BITMAP:
+        assign_concrete<TYPE_BITMAP>(
+                field.template get<typename 
PrimitiveTypeTraits<TYPE_BITMAP>::NearestFieldType>());
         return;
     case PrimitiveType::TYPE_HLL:
         assign_concrete<TYPE_HLL>(
@@ -544,10 +544,10 @@ std::string Field::get_type_name() const {
             typename PrimitiveTypeTraits<TYPE_MAP>::NearestFieldType && rhs);  
              \
     template void Field::FUNC_NAME<TYPE_MAP>(                                  
              \
             const typename PrimitiveTypeTraits<TYPE_MAP>::NearestFieldType& 
rhs);            \
-    template void Field::FUNC_NAME<TYPE_OBJECT>(                               
              \
-            typename PrimitiveTypeTraits<TYPE_OBJECT>::NearestFieldType && 
rhs);             \
-    template void Field::FUNC_NAME<TYPE_OBJECT>(                               
              \
-            const typename PrimitiveTypeTraits<TYPE_OBJECT>::NearestFieldType& 
rhs);         \
+    template void Field::FUNC_NAME<TYPE_BITMAP>(                               
              \
+            typename PrimitiveTypeTraits<TYPE_BITMAP>::NearestFieldType && 
rhs);             \
+    template void Field::FUNC_NAME<TYPE_BITMAP>(                               
              \
+            const typename PrimitiveTypeTraits<TYPE_BITMAP>::NearestFieldType& 
rhs);         \
     template void Field::FUNC_NAME<TYPE_TIMEV2>(                               
              \
             const typename PrimitiveTypeTraits<TYPE_TIMEV2>::NearestFieldType& 
rhs);         \
     template void Field::FUNC_NAME<TYPE_TIMEV2>(                               
              \
diff --git a/be/src/vec/core/field.h b/be/src/vec/core/field.h
index 8a1be5d9df3..ccbe81a57cb 100644
--- a/be/src/vec/core/field.h
+++ b/be/src/vec/core/field.h
@@ -349,7 +349,7 @@ public:
         }
 
         switch (type) {
-        case PrimitiveType::TYPE_OBJECT:
+        case PrimitiveType::TYPE_BITMAP:
         case PrimitiveType::TYPE_HLL:
         case PrimitiveType::TYPE_QUANTILE_STATE:
         case PrimitiveType::INVALID_TYPE:
@@ -457,7 +457,7 @@ public:
         case PrimitiveType::TYPE_VARIANT:
             f(field.template get<VariantMap>());
             return;
-        case PrimitiveType::TYPE_OBJECT:
+        case PrimitiveType::TYPE_BITMAP:
             f(field.template get<BitmapValue>());
             return;
         case PrimitiveType::TYPE_HLL:
diff --git a/be/src/vec/data_types/data_type.cpp 
b/be/src/vec/data_types/data_type.cpp
index 31f40310827..389a31d1bd8 100644
--- a/be/src/vec/data_types/data_type.cpp
+++ b/be/src/vec/data_types/data_type.cpp
@@ -149,7 +149,7 @@ PGenericType_TypeId IDataType::get_pdata_type(const 
IDataType* data_type) {
         return PGenericType::VARIANT;
     case PrimitiveType::TYPE_DATETIMEV2:
         return PGenericType::DATETIMEV2;
-    case PrimitiveType::TYPE_OBJECT:
+    case PrimitiveType::TYPE_BITMAP:
         return PGenericType::BITMAP;
     case PrimitiveType::TYPE_HLL:
         return PGenericType::HLL;
diff --git a/be/src/vec/data_types/data_type_bitmap.h 
b/be/src/vec/data_types/data_type_bitmap.h
index 50d344168af..519ebfc6a4a 100644
--- a/be/src/vec/data_types/data_type_bitmap.h
+++ b/be/src/vec/data_types/data_type_bitmap.h
@@ -51,10 +51,10 @@ public:
 
     std::string do_get_name() const override { return get_family_name(); }
     const char* get_family_name() const override { return "BitMap"; }
-    PrimitiveType get_primitive_type() const override { return 
PrimitiveType::TYPE_OBJECT; }
+    PrimitiveType get_primitive_type() const override { return 
PrimitiveType::TYPE_BITMAP; }
 
     doris::FieldType get_storage_field_type() const override {
-        return doris::FieldType::OLAP_FIELD_TYPE_OBJECT;
+        return doris::FieldType::OLAP_FIELD_TYPE_BITMAP;
     }
 
     int64_t get_uncompressed_serialized_bytes(const IColumn& column,
@@ -89,7 +89,7 @@ public:
     Status from_string(ReadBuffer& rb, IColumn* column) const override;
 
     Field get_default() const override {
-        return Field::create_field<TYPE_OBJECT>(BitmapValue::empty_bitmap());
+        return Field::create_field<TYPE_BITMAP>(BitmapValue::empty_bitmap());
     }
 
     [[noreturn]] Field get_field(const TExprNode& node) const override {
diff --git a/be/src/vec/data_types/data_type_factory.cpp 
b/be/src/vec/data_types/data_type_factory.cpp
index 22f0c0622cc..51d1562d7e0 100644
--- a/be/src/vec/data_types/data_type_factory.cpp
+++ b/be/src/vec/data_types/data_type_factory.cpp
@@ -177,7 +177,7 @@ DataTypePtr 
DataTypeFactory::_create_primitive_data_type(const FieldType& type,
     case FieldType::OLAP_FIELD_TYPE_HLL:
         result = std::make_shared<vectorized::DataTypeHLL>();
         break;
-    case FieldType::OLAP_FIELD_TYPE_OBJECT:
+    case FieldType::OLAP_FIELD_TYPE_BITMAP:
         result = std::make_shared<vectorized::DataTypeBitMap>();
         break;
     case FieldType::OLAP_FIELD_TYPE_DECIMAL:
@@ -450,7 +450,7 @@ DataTypePtr DataTypeFactory::create_data_type(const 
PrimitiveType primitive_type
     case TYPE_HLL:
         nested = std::make_shared<vectorized::DataTypeHLL>();
         break;
-    case TYPE_OBJECT:
+    case TYPE_BITMAP:
         nested = std::make_shared<vectorized::DataTypeBitMap>();
         break;
     case TYPE_DECIMALV2:
diff --git a/be/src/vec/exec/vjdbc_connector.cpp 
b/be/src/vec/exec/vjdbc_connector.cpp
index e50c822c7fe..f868f846392 100644
--- a/be/src/vec/exec/vjdbc_connector.cpp
+++ b/be/src/vec/exec/vjdbc_connector.cpp
@@ -410,7 +410,7 @@ jobject JdbcConnector::_get_reader_params(Block* block, 
JNIEnv* env, size_t colu
             columns_nullable << (slot->is_nullable() ? "true" : "false") << 
",";
             // Check column type and replace accordingly
             std::string replace_type = "not_replace";
-            if (type->get_primitive_type() == PrimitiveType::TYPE_OBJECT) {
+            if (type->get_primitive_type() == PrimitiveType::TYPE_BITMAP) {
                 replace_type = "bitmap";
             } else if (type->get_primitive_type() == PrimitiveType::TYPE_HLL) {
                 replace_type = "hll";
@@ -433,7 +433,7 @@ jobject JdbcConnector::_get_reader_params(Block* block, 
JNIEnv* env, size_t colu
         // Record required fields and column types
         std::string field = slot->col_name();
         std::string jni_type;
-        if (slot->type()->get_primitive_type() == PrimitiveType::TYPE_OBJECT ||
+        if (slot->type()->get_primitive_type() == PrimitiveType::TYPE_BITMAP ||
             slot->type()->get_primitive_type() == PrimitiveType::TYPE_HLL ||
             slot->type()->get_primitive_type() == PrimitiveType::TYPE_JSONB) {
             jni_type = "string";
@@ -467,7 +467,7 @@ Status JdbcConnector::_cast_string_to_special(Block* block, 
JNIEnv* env, size_t
             RETURN_IF_ERROR(_cast_string_to_hll(slot_desc, block, 
column_index, num_rows));
         } else if (slot_desc->type()->get_primitive_type() == 
PrimitiveType::TYPE_JSONB) {
             RETURN_IF_ERROR(_cast_string_to_json(slot_desc, block, 
column_index, num_rows));
-        } else if (slot_desc->type()->get_primitive_type() == 
PrimitiveType::TYPE_OBJECT) {
+        } else if (slot_desc->type()->get_primitive_type() == 
PrimitiveType::TYPE_BITMAP) {
             RETURN_IF_ERROR(_cast_string_to_bitmap(slot_desc, block, 
column_index, num_rows));
         }
     }
diff --git a/be/src/vec/functions/function_bitmap.cpp 
b/be/src/vec/functions/function_bitmap.cpp
index e1bde015419..2a7e79a7321 100644
--- a/be/src/vec/functions/function_bitmap.cpp
+++ b/be/src/vec/functions/function_bitmap.cpp
@@ -977,7 +977,7 @@ struct NameBitmapToString {
 
 struct BitmapToString {
     using ReturnType = DataTypeString;
-    static constexpr auto PrimitiveTypeImpl = PrimitiveType::TYPE_OBJECT;
+    static constexpr auto PrimitiveTypeImpl = PrimitiveType::TYPE_BITMAP;
     using Type = DataTypeBitMap::FieldType;
     using ReturnColumnType = ColumnString;
     using Chars = ColumnString::Chars;
@@ -1000,7 +1000,7 @@ struct NameBitmapToBase64 {
 
 struct BitmapToBase64 {
     using ReturnType = DataTypeString;
-    static constexpr auto PrimitiveTypeImpl = PrimitiveType::TYPE_OBJECT;
+    static constexpr auto PrimitiveTypeImpl = PrimitiveType::TYPE_BITMAP;
     using Type = DataTypeBitMap::FieldType;
     using ReturnColumnType = ColumnString;
     using Chars = ColumnString::Chars;
diff --git a/be/src/vec/functions/function_case.h 
b/be/src/vec/functions/function_case.h
index e760c04ecda..146c9f8ac01 100644
--- a/be/src/vec/functions/function_case.h
+++ b/be/src/vec/functions/function_case.h
@@ -429,7 +429,7 @@ public:
         case PrimitiveType::TYPE_VARIANT:
             return execute_get_when_null<ColumnVariant>(data_type, block, 
arguments, result,
                                                         input_rows_count);
-        case PrimitiveType::TYPE_OBJECT:
+        case PrimitiveType::TYPE_BITMAP:
             return execute_get_when_null<ColumnBitmap>(data_type, block, 
arguments, result,
                                                        input_rows_count);
         case PrimitiveType::TYPE_HLL:
diff --git a/be/src/vec/functions/function_cast.h 
b/be/src/vec/functions/function_cast.h
index 47b88571f19..720a0d77cf7 100644
--- a/be/src/vec/functions/function_cast.h
+++ b/be/src/vec/functions/function_cast.h
@@ -2236,7 +2236,7 @@ private:
         case PrimitiveType::TYPE_HLL:
             return create_hll_wrapper(context, from_type,
                                       static_cast<const 
DataTypeHLL&>(*to_type));
-        case PrimitiveType::TYPE_OBJECT:
+        case PrimitiveType::TYPE_BITMAP:
             return create_bitmap_wrapper(context, from_type,
                                          static_cast<const 
DataTypeBitMap&>(*to_type));
         case PrimitiveType::TYPE_JSONB:
diff --git a/be/src/vec/functions/function_coalesce.cpp 
b/be/src/vec/functions/function_coalesce.cpp
index f288e9e8964..58165bedd19 100644
--- a/be/src/vec/functions/function_coalesce.cpp
+++ b/be/src/vec/functions/function_coalesce.cpp
@@ -325,7 +325,7 @@ public:
         case PrimitiveType::TYPE_DATETIMEV2:
             return insert_result_data<ColumnUInt64>(result_column, 
argument_column, null_map_data,
                                                     filled_flag, 
input_rows_count);
-        case PrimitiveType::TYPE_OBJECT:
+        case PrimitiveType::TYPE_BITMAP:
             return insert_result_data_bitmap(result_column, argument_column, 
null_map_data,
                                              filled_flag, input_rows_count);
         default:
diff --git a/be/src/vec/olap/olap_data_convertor.cpp 
b/be/src/vec/olap/olap_data_convertor.cpp
index da9a50ca595..91b6a346643 100644
--- a/be/src/vec/olap/olap_data_convertor.cpp
+++ b/be/src/vec/olap/olap_data_convertor.cpp
@@ -109,7 +109,7 @@ OlapBlockDataConvertor::create_agg_state_convertor(const 
TabletColumn& column) {
     // Finally, the serialized type of some special functions is 
bitmap/array/map...
     if (type == PrimitiveType::TYPE_STRING) {
         return std::make_unique<OlapColumnDataConvertorVarChar>(false);
-    } else if (type == PrimitiveType::TYPE_OBJECT) {
+    } else if (type == PrimitiveType::TYPE_BITMAP) {
         return std::make_unique<OlapColumnDataConvertorBitMap>();
     } else if (type == PrimitiveType::INVALID_TYPE) {
         // INVALID_TYPE means function's serialized type is fixed object
@@ -130,7 +130,7 @@ OlapBlockDataConvertor::create_agg_state_convertor(const 
TabletColumn& column) {
 OlapBlockDataConvertor::OlapColumnDataConvertorBaseUPtr
 OlapBlockDataConvertor::create_olap_column_data_convertor(const TabletColumn& 
column) {
     switch (column.type()) {
-    case FieldType::OLAP_FIELD_TYPE_OBJECT: {
+    case FieldType::OLAP_FIELD_TYPE_BITMAP: {
         return std::make_unique<OlapColumnDataConvertorBitMap>();
     }
     case FieldType::OLAP_FIELD_TYPE_QUANTILE_STATE: {
diff --git a/be/src/vec/sink/vtablet_block_convertor.cpp 
b/be/src/vec/sink/vtablet_block_convertor.cpp
index 697eac4d978..2dc9316a5b4 100644
--- a/be/src/vec/sink/vtablet_block_convertor.cpp
+++ b/be/src/vec/sink/vtablet_block_convertor.cpp
@@ -445,7 +445,7 @@ Status OlapTableBlockConvertor::_internal_validate_column(
     // Only two case:
     // 1. column is nullable but the desc is not nullable
     // 2. desc->type is BITMAP
-    if ((!type->is_nullable() || type->get_primitive_type() == TYPE_OBJECT) && 
column_ptr) {
+    if ((!type->is_nullable() || type->get_primitive_type() == TYPE_BITMAP) && 
column_ptr) {
         for (int j = 0; j < row_count; ++j) {
             auto row = rows ? (*rows)[j] : j;
             if (null_map[j] && !_filter_map[row]) {
diff --git a/be/test/olap/rowset/segment_v2/column_reader_writer_test.cpp 
b/be/test/olap/rowset/segment_v2/column_reader_writer_test.cpp
index 06a655198f1..15504a184f9 100644
--- a/be/test/olap/rowset/segment_v2/column_reader_writer_test.cpp
+++ b/be/test/olap/rowset/segment_v2/column_reader_writer_test.cpp
@@ -479,7 +479,7 @@ void test_read_default_value(string value, void* result) {
                             << "j:" << j;
                 } else if (type == FieldType::OLAP_FIELD_TYPE_VARCHAR ||
                            type == FieldType::OLAP_FIELD_TYPE_HLL ||
-                           type == FieldType::OLAP_FIELD_TYPE_OBJECT) {
+                           type == FieldType::OLAP_FIELD_TYPE_BITMAP) {
                     EXPECT_EQ(value, reinterpret_cast<const 
Slice*>(col.cell_ptr(j))->to_string())
                             << "j:" << j;
                 } else {
@@ -512,7 +512,7 @@ void test_read_default_value(string value, void* result) {
                                 << "j:" << j;
                     } else if (type == FieldType::OLAP_FIELD_TYPE_VARCHAR ||
                                type == FieldType::OLAP_FIELD_TYPE_HLL ||
-                               type == FieldType::OLAP_FIELD_TYPE_OBJECT) {
+                               type == FieldType::OLAP_FIELD_TYPE_BITMAP) {
                         EXPECT_EQ(value,
                                   reinterpret_cast<const 
Slice*>(col.cell_ptr(j))->to_string());
                     } else {
@@ -581,7 +581,7 @@ void test_v_read_default_value(string value, void* result) {
                 if (type == FieldType::OLAP_FIELD_TYPE_CHAR) {
                 } else if (type == FieldType::OLAP_FIELD_TYPE_VARCHAR ||
                            type == FieldType::OLAP_FIELD_TYPE_HLL ||
-                           type == FieldType::OLAP_FIELD_TYPE_OBJECT) {
+                           type == FieldType::OLAP_FIELD_TYPE_BITMAP) {
                 } else if (type == FieldType::OLAP_FIELD_TYPE_DATE ||
                            type == FieldType::OLAP_FIELD_TYPE_DATETIME) {
                     StringRef sr = mcp->get_data_at(j);
@@ -755,7 +755,7 @@ TEST_F(ColumnReaderWriterTest, test_default_value) {
     c[0] = 0;
     std::string v_object(c, 1);
     test_read_default_value<FieldType::OLAP_FIELD_TYPE_HLL>(v_object, 
&v_object);
-    test_read_default_value<FieldType::OLAP_FIELD_TYPE_OBJECT>(v_object, 
&v_object);
+    test_read_default_value<FieldType::OLAP_FIELD_TYPE_BITMAP>(v_object, 
&v_object);
     free(c);
 
     std::string v_date("2019-11-12");
diff --git a/be/test/runtime_filter/runtime_filter_consumer_test.cpp 
b/be/test/runtime_filter/runtime_filter_consumer_test.cpp
index 4d1338c2689..77ee21368c0 100644
--- a/be/test/runtime_filter/runtime_filter_consumer_test.cpp
+++ b/be/test/runtime_filter/runtime_filter_consumer_test.cpp
@@ -186,7 +186,7 @@ TEST_F(RuntimeFilterConsumerTest, bitmap_filter) {
                                             .set_types(
                                                     TTypeNodeBuilder()
                                                             
.set_type(TTypeNodeType::SCALAR)
-                                                            
.set_scalar_type(TPrimitiveType::OBJECT)
+                                                            
.set_scalar_type(TPrimitiveType::BITMAP)
                                                             .build())
                                             .build(),
                                     0)
diff --git a/be/test/vec/core/column_complex_test.cpp 
b/be/test/vec/core/column_complex_test.cpp
index 435173cae97..f6ae20cf313 100644
--- a/be/test/vec/core/column_complex_test.cpp
+++ b/be/test/vec/core/column_complex_test.cpp
@@ -550,7 +550,7 @@ public:
         const auto rows = column.size();
         for (size_t i = 0; i != rows; ++i) {
             auto field = column[i];
-            ASSERT_EQ(field.get_type(), PrimitiveType::TYPE_OBJECT);
+            ASSERT_EQ(field.get_type(), PrimitiveType::TYPE_BITMAP);
             dst_column->insert(field);
         }
 
@@ -660,7 +660,7 @@ TEST_F(ColumnBitmapTest, OperatorValidate) {
     auto& bitmap_column = assert_cast<ColumnBitmap&>(*column.get());
     for (size_t i = 0; i != row_size; ++i) {
         auto field = bitmap_column[i];
-        ASSERT_EQ(field.get_type(), PrimitiveType::TYPE_OBJECT);
+        ASSERT_EQ(field.get_type(), PrimitiveType::TYPE_BITMAP);
         const auto& bitmap = vectorized::get<BitmapValue&>(field);
 
         ASSERT_EQ(bitmap.cardinality(), i + 1);
diff --git a/be/test/vec/data_types/data_type_bitmap_test.cpp 
b/be/test/vec/data_types/data_type_bitmap_test.cpp
index 8e994734e93..7d10e6b8ed4 100644
--- a/be/test/vec/data_types/data_type_bitmap_test.cpp
+++ b/be/test/vec/data_types/data_type_bitmap_test.cpp
@@ -58,21 +58,21 @@ public:
     }
     std::unique_ptr<CommonDataTypeTest> helper;
     DataTypePtr dt_bitmap =
-            
DataTypeFactory::instance().create_data_type(FieldType::OLAP_FIELD_TYPE_OBJECT, 
0, 0);
+            
DataTypeFactory::instance().create_data_type(FieldType::OLAP_FIELD_TYPE_BITMAP, 
0, 0);
     int rows_value;
 };
 
 TEST_P(DataTypeBitMapTest, MetaInfoTest) {
     auto bitmap_type_descriptor =
-            
DataTypeFactory::instance().create_data_type(PrimitiveType::TYPE_OBJECT, false);
+            
DataTypeFactory::instance().create_data_type(PrimitiveType::TYPE_BITMAP, false);
     auto col_meta = std::make_shared<PColumnMeta>();
     col_meta->set_type(PGenericType_TypeId_BITMAP);
     CommonDataTypeTest::DataTypeMetaInfo bitmap_meta_info_to_assert = {
-            .type_id = PrimitiveType::TYPE_OBJECT,
+            .type_id = PrimitiveType::TYPE_BITMAP,
             .type_as_type_descriptor = bitmap_type_descriptor,
             .family_name = "BitMap",
             .has_subtypes = false,
-            .storage_field_type = doris::FieldType::OLAP_FIELD_TYPE_OBJECT,
+            .storage_field_type = doris::FieldType::OLAP_FIELD_TYPE_BITMAP,
             .should_align_right_in_pretty_formats = false,
             .text_can_contain_only_valid_utf8 = true,
             .have_maximum_size_of_value = false,
@@ -83,13 +83,13 @@ TEST_P(DataTypeBitMapTest, MetaInfoTest) {
             .is_value_represented_by_number = false,
             .pColumnMeta = col_meta.get(),
             .is_value_unambiguously_represented_in_contiguous_memory_region = 
true,
-            .default_field = 
Field::create_field<TYPE_OBJECT>(BitmapValue::empty_bitmap()),
+            .default_field = 
Field::create_field<TYPE_BITMAP>(BitmapValue::empty_bitmap()),
     };
     helper->meta_info_assert(dt_bitmap, bitmap_meta_info_to_assert);
 }
 
 TEST_P(DataTypeBitMapTest, CreateColumnTest) {
-    Field default_field_bitmap = 
Field::create_field<TYPE_OBJECT>(BitmapValue::empty_bitmap());
+    Field default_field_bitmap = 
Field::create_field<TYPE_BITMAP>(BitmapValue::empty_bitmap());
     helper->create_column_assert(dt_bitmap, default_field_bitmap, 17);
 }
 
diff --git a/be/test/vec/function/function_bitmap_test.cpp 
b/be/test/vec/function/function_bitmap_test.cpp
index 910fafa4b63..abfbda1b82a 100644
--- a/be/test/vec/function/function_bitmap_test.cpp
+++ b/be/test/vec/function/function_bitmap_test.cpp
@@ -34,7 +34,7 @@ namespace doris::vectorized {
 
 TEST(function_bitmap_test, function_bitmap_min_test) {
     std::string func_name = "bitmap_min";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP};
 
     BitmapValue bitmap1(1);
     BitmapValue bitmap2({1, 9999999});
@@ -48,7 +48,7 @@ TEST(function_bitmap_test, function_bitmap_min_test) {
 }
 TEST(function_bitmap_test, function_bitmap_max_test) {
     std::string func_name = "bitmap_max";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP};
 
     BitmapValue bitmap1(1);
     BitmapValue bitmap2({1, 9999999});
@@ -63,7 +63,7 @@ TEST(function_bitmap_test, function_bitmap_max_test) {
 
 TEST(function_bitmap_test, function_bitmap_to_string_test) {
     std::string func_name = "bitmap_to_string";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP};
 
     BitmapValue bitmap1(1);
     BitmapValue bitmap2({1, 9999999});
@@ -78,7 +78,7 @@ TEST(function_bitmap_test, function_bitmap_to_string_test) {
 
 TEST(function_bitmap_test, function_bitmap_remove) {
     std::string func_name = "bitmap_remove";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_BIGINT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BIGINT};
 
     BitmapValue bitmap1({1, 3});
     BitmapValue bitmap2({1, 3, 5});
@@ -110,7 +110,7 @@ TEST(function_bitmap_test, function_bitmap_to_base64) {
             std::make_pair(std::string("bitmap_serialize_version"), 
field_ser_ver));
 
     std::string func_name = "bitmap_to_base64";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP};
 
     EXPECT_TRUE(config::set_config("enable_set_in_bitmap_value", "false", 
false, true).ok());
     std::vector<uint64_t> bits32 {0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  10, 
11,
@@ -319,7 +319,7 @@ TEST(function_bitmap_test, function_bitmap_from_base64) {
 
 TEST(function_bitmap_test, function_bitmap_and_count) {
     std::string func_name = "bitmap_and_count";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP};
     BitmapValue bitmap1({1, 2, 3});
     BitmapValue bitmap2({3, 4, 5});
     BitmapValue empty_bitmap;
@@ -330,8 +330,8 @@ TEST(function_bitmap_test, function_bitmap_and_count) {
     static_cast<void>(check_function<DataTypeInt64, true>(func_name, 
input_types, data_set));
 
     {
-        InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT,
-                                    PrimitiveType::TYPE_OBJECT};
+        InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP,
+                                    PrimitiveType::TYPE_BITMAP};
         BitmapValue bitmap1({33, 1, 2019});
         BitmapValue bitmap2({0, 33, std::numeric_limits<uint64_t>::min()});
         BitmapValue bitmap3({33, 5, std::numeric_limits<uint64_t>::max()});
@@ -348,7 +348,7 @@ TEST(function_bitmap_test, function_bitmap_and_count) {
 
 TEST(function_bitmap_test, function_bitmap_or_count) {
     std::string func_name = "bitmap_or_count";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP};
 
     BitmapValue bitmap1({1, 2, 3});
     BitmapValue bitmap2({1, 2, 3, 4});
@@ -361,8 +361,8 @@ TEST(function_bitmap_test, function_bitmap_or_count) {
     static_cast<void>(check_function<DataTypeInt64, true>(func_name, 
input_types, data_set));
 
     {
-        InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT,
-                                    PrimitiveType::TYPE_OBJECT};
+        InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP,
+                                    PrimitiveType::TYPE_BITMAP};
         BitmapValue bitmap1({1024, 1, 2019});
         BitmapValue bitmap2({0, 33, std::numeric_limits<uint64_t>::min()});
         BitmapValue bitmap3({33, 5, std::numeric_limits<uint64_t>::max()}); 
//18446744073709551615
@@ -381,7 +381,7 @@ TEST(function_bitmap_test, function_bitmap_or_count) {
 
 TEST(function_bitmap_test, function_bitmap_xor_count) {
     std::string func_name = "bitmap_xor_count";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP};
 
     BitmapValue bitmap1({1, 2, 3});
     BitmapValue bitmap2({1, 2, 3, 4});
@@ -395,8 +395,8 @@ TEST(function_bitmap_test, function_bitmap_xor_count) {
     static_cast<void>(check_function<DataTypeInt64, true>(func_name, 
input_types, data_set));
 
     {
-        InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT,
-                                    PrimitiveType::TYPE_OBJECT};
+        InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP,
+                                    PrimitiveType::TYPE_BITMAP};
         BitmapValue bitmap1({1024, 1, 2019});
         BitmapValue bitmap2({0, 33, std::numeric_limits<uint64_t>::min()});
         BitmapValue bitmap3({33, 5, std::numeric_limits<uint64_t>::max()});
@@ -414,7 +414,7 @@ TEST(function_bitmap_test, function_bitmap_xor_count) {
 
 TEST(function_bitmap_test, function_bitmap_and_not_count) {
     std::string func_name = "bitmap_and_not_count";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP};
     BitmapValue bitmap1({1, 2, 3});
     BitmapValue bitmap2({3, 4, std::numeric_limits<uint64_t>::min()});
     BitmapValue bitmap3({33, 5, std::numeric_limits<uint64_t>::max()});
@@ -429,7 +429,7 @@ TEST(function_bitmap_test, function_bitmap_and_not_count) {
 }
 TEST(function_bitmap_test, function_bitmap_and_not_count_alias) {
     std::string func_name = "bitmap_andnot_count";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP};
     BitmapValue bitmap1({1, 2, 3});
     BitmapValue bitmap2({3, 4, std::numeric_limits<uint64_t>::min()});
     BitmapValue bitmap3({33, 5, std::numeric_limits<uint64_t>::max()});
@@ -444,7 +444,7 @@ TEST(function_bitmap_test, 
function_bitmap_and_not_count_alias) {
 }
 TEST(function_bitmap_test, function_bitmap_has_all) {
     std::string func_name = "bitmap_has_all";
-    InputTypeSet input_types = {PrimitiveType::TYPE_OBJECT, 
PrimitiveType::TYPE_OBJECT};
+    InputTypeSet input_types = {PrimitiveType::TYPE_BITMAP, 
PrimitiveType::TYPE_BITMAP};
 
     BitmapValue bitmap1(
             {1, 4, 5, std::numeric_limits<uint64_t>::max(), 
std::numeric_limits<uint64_t>::min()});
diff --git a/be/test/vec/function/function_test_util.cpp 
b/be/test/vec/function/function_test_util.cpp
index 7b234e0f93b..8f0b12eaf41 100644
--- a/be/test/vec/function/function_test_util.cpp
+++ b/be/test/vec/function/function_test_util.cpp
@@ -90,7 +90,7 @@ static size_t type_index_to_data_type(const 
std::vector<AnyType>& input_types, s
         type = std::make_shared<DataTypeJsonb>();
         desc = type;
         return 1;
-    case PrimitiveType::TYPE_OBJECT:
+    case PrimitiveType::TYPE_BITMAP:
         type = std::make_shared<DataTypeBitMap>();
         desc = type;
         return 1;
@@ -378,7 +378,7 @@ bool insert_cell(MutableColumnPtr& column, DataTypePtr 
type_ptr, const AnyType&
             column->insert_data(jsonb_val.value(), jsonb_val.size());
             break;
         }
-        case PrimitiveType::TYPE_OBJECT: {
+        case PrimitiveType::TYPE_BITMAP: {
             auto* bitmap = any_cast<BitmapValue*>(cell);
             column->insert_data((char*)bitmap, sizeof(BitmapValue));
             break;
diff --git a/be/test/vec/jsonb/serialize_test.cpp 
b/be/test/vec/jsonb/serialize_test.cpp
index b2c9cde5ae1..abf92d9f3eb 100644
--- a/be/test/vec/jsonb/serialize_test.cpp
+++ b/be/test/vec/jsonb/serialize_test.cpp
@@ -368,7 +368,7 @@ TEST(BlockSerializeTest, JsonbBlock) {
             {"k1", FieldType::OLAP_FIELD_TYPE_INT, 1, TYPE_INT},
             {"k2", FieldType::OLAP_FIELD_TYPE_STRING, 2, TYPE_STRING},
             {"k3", FieldType::OLAP_FIELD_TYPE_DECIMAL128I, 3, 
TYPE_DECIMAL128I},
-            {"v1", FieldType::OLAP_FIELD_TYPE_OBJECT, 7, TYPE_OBJECT},
+            {"v1", FieldType::OLAP_FIELD_TYPE_BITMAP, 7, TYPE_BITMAP},
             {"v2", FieldType::OLAP_FIELD_TYPE_HLL, 8, TYPE_HLL},
             {"k4", FieldType::OLAP_FIELD_TYPE_STRING, 4, TYPE_STRING},
             {"k5", FieldType::OLAP_FIELD_TYPE_DECIMAL128I, 5, 
TYPE_DECIMAL128I},
diff --git 
a/fe/fe-common/src/main/java/org/apache/doris/catalog/PrimitiveType.java 
b/fe/fe-common/src/main/java/org/apache/doris/catalog/PrimitiveType.java
index 73c7e2cb31b..0775b524204 100644
--- a/fe/fe-common/src/main/java/org/apache/doris/catalog/PrimitiveType.java
+++ b/fe/fe-common/src/main/java/org/apache/doris/catalog/PrimitiveType.java
@@ -62,7 +62,7 @@ public enum PrimitiveType {
     TIME("TIME", 8, TPrimitiveType.TIME, false),
     // these following types are stored as object binary in BE.
     HLL("HLL", 16, TPrimitiveType.HLL, true),
-    BITMAP("BITMAP", 16, TPrimitiveType.OBJECT, true),
+    BITMAP("BITMAP", 16, TPrimitiveType.BITMAP, true),
     QUANTILE_STATE("QUANTILE_STATE", 16, TPrimitiveType.QUANTILE_STATE, true),
     AGG_STATE("AGG_STATE", 16, TPrimitiveType.AGG_STATE, true),
     DATEV2("DATEV2", 4, TPrimitiveType.DATEV2, true),
@@ -802,7 +802,7 @@ public enum PrimitiveType {
                 return CHAR;
             case HLL:
                 return HLL;
-            case OBJECT:
+            case BITMAP:
                 return BITMAP;
             case QUANTILE_STATE:
                 return QUANTILE_STATE;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Column.java 
b/fe/fe-core/src/main/java/org/apache/doris/catalog/Column.java
index 5b9c78ac488..661ddb5fbe0 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Column.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Column.java
@@ -721,7 +721,7 @@ public class Column implements GsonPostProcessable {
             case DOUBLE:
                 return 8;
             case QUANTILE_STATE:
-            case OBJECT:
+            case BITMAP:
                 return 16;
             case CHAR:
                 return stringLength;
diff --git a/gensrc/thrift/Types.thrift b/gensrc/thrift/Types.thrift
index e7752d4a0b4..fa3fff05e0e 100644
--- a/gensrc/thrift/Types.thrift
+++ b/gensrc/thrift/Types.thrift
@@ -77,7 +77,7 @@ enum TPrimitiveType {
   HLL,
   DECIMALV2,
   TIME,
-  OBJECT,
+  BITMAP,
   ARRAY,
   MAP,
   STRUCT,


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to