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

twice pushed a commit to branch unstable
in repository https://gitbox.apache.org/repos/asf/kvrocks.git


The following commit(s) were added to refs/heads/unstable by this push:
     new 8ecccdd1 Skip noindex fields in indexer (#2223)
8ecccdd1 is described below

commit 8ecccdd148963080e5ed8c3a41f2c1aa0240fb6c
Author: Twice <[email protected]>
AuthorDate: Sat Apr 6 08:40:28 2024 +0900

    Skip noindex fields in indexer (#2223)
    
    Co-authored-by: hulk <[email protected]>
---
 src/search/indexer.cc | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/search/indexer.cc b/src/search/indexer.cc
index bb4e88c1..df8f8eb3 100644
--- a/src/search/indexer.cc
+++ b/src/search/indexer.cc
@@ -96,6 +96,10 @@ StatusOr<IndexUpdater::FieldValues> 
IndexUpdater::Record(std::string_view key, c
 
   FieldValues values;
   for (const auto &[field, info] : fields) {
+    if (info->noindex) {
+      continue;
+    }
+
     std::string value;
     auto s = retriever.Retrieve(field, &value);
     if (s.IsNotFound()) continue;
@@ -205,7 +209,11 @@ Status IndexUpdater::UpdateIndex(const std::string &field, 
std::string_view key,
 Status IndexUpdater::Update(const FieldValues &original, std::string_view key, 
const std::string &ns) {
   auto current = GET_OR_RET(Record(key, ns));
 
-  for (const auto &[field, _] : fields) {
+  for (const auto &[field, info] : fields) {
+    if (info->noindex) {
+      continue;
+    }
+
     std::string_view original_val, current_val;
 
     if (auto it = original.find(field); it != original.end()) {

Reply via email to