From cc1bc07bfd8a4d3fa4c0e5f9b03ec9a61f426131 Mon Sep 17 00:00:00 2001
From: zhagnlu <1542303831@qq.com>
Date: Sun, 30 Jun 2024 20:02:06 +0800
Subject: [PATCH] enhance: add log to bitmap index (#34197)

#32900

Signed-off-by: luzhang <luzhang@zilliz.com>
Co-authored-by: luzhang <luzhang@zilliz.com>
---
 internal/core/src/index/HybridScalarIndex.cpp |  6 ++++++
 internal/core/src/index/ScalarIndex.h         | 20 +++++++++++++++++++
 2 files changed, 26 insertions(+)

diff --git a/internal/core/src/index/HybridScalarIndex.cpp b/internal/core/src/index/HybridScalarIndex.cpp
index af27c75486..f943798f39 100644
--- a/internal/core/src/index/HybridScalarIndex.cpp
+++ b/internal/core/src/index/HybridScalarIndex.cpp
@@ -244,6 +244,8 @@ void
 HybridScalarIndex<T>::BuildInternal(
     const std::vector<FieldDataPtr>& field_datas) {
     auto index = GetInternalIndex();
+    LOG_INFO("build bitmap index with internal index:{}",
+             ToString(internal_index_type_));
     index->BuildWithFieldData(field_datas);
 }
 
@@ -404,6 +406,8 @@ HybridScalarIndex<T>::Load(const BinarySet& binary_set, const Config& config) {
     DeserializeIndexType(binary_set);
 
     auto index = GetInternalIndex();
+    LOG_INFO("load bitmap index with internal index:{}",
+             ToString(internal_index_type_));
     index->Load(binary_set, config);
 
     is_built_ = true;
@@ -435,6 +439,8 @@ HybridScalarIndex<T>::Load(milvus::tracer::TraceContext ctx,
     DeserializeIndexType(binary_set);
 
     auto index = GetInternalIndex();
+    LOG_INFO("load bitmap index with internal index:{}",
+             ToString(internal_index_type_));
     index->Load(ctx, config);
 
     is_built_ = true;
diff --git a/internal/core/src/index/ScalarIndex.h b/internal/core/src/index/ScalarIndex.h
index 883fa607f3..023f101192 100644
--- a/internal/core/src/index/ScalarIndex.h
+++ b/internal/core/src/index/ScalarIndex.h
@@ -37,6 +37,26 @@ enum class ScalarIndexType {
     HYBRID,
 };
 
+inline std::string
+ToString(ScalarIndexType type) {
+    switch (type) {
+        case ScalarIndexType::NONE:
+            return "NONE";
+        case ScalarIndexType::BITMAP:
+            return "BITMAP";
+        case ScalarIndexType::STLSORT:
+            return "STLSORT";
+        case ScalarIndexType::MARISA:
+            return "MARISA";
+        case ScalarIndexType::INVERTED:
+            return "INVERTED";
+        case ScalarIndexType::HYBRID:
+            return "HYBRID";
+        default:
+            return "UNKNOWN";
+    }
+}
+
 template <typename T>
 class ScalarIndex : public IndexBase {
  public: