From a3fae6f016b74bd257218d73c072ec6f011294d5 Mon Sep 17 00:00:00 2001 From: Shivshankar-Reddy Date: Thu, 25 Sep 2025 18:15:11 +0000 Subject: [PATCH 1/2] Fix max-index limit value and default value, check range macro optimization Signed-off-by: Shivshankar-Reddy --- src/schema_manager.cc | 4 ++-- vmsdk/src/module_config.cc | 2 +- vmsdk/src/module_config.h | 16 +++++++++------- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/schema_manager.cc b/src/schema_manager.cc index ff774e242..d3c316002 100644 --- a/src/schema_manager.cc +++ b/src/schema_manager.cc @@ -47,7 +47,7 @@ namespace valkey_search { constexpr absl::string_view kMaxIndexesConfig{"max-indexes"}; -constexpr uint32_t kMaxIndexes{10}; +constexpr uint32_t kMaxIndexes{UINT32_MAX}; constexpr absl::string_view kIndexSchemaBackfillBatchSizeConfig( "backfill-batch-size"); @@ -59,7 +59,7 @@ namespace options { /// have. static auto max_indexes = vmsdk::config::NumberBuilder(kMaxIndexesConfig, // name - kMaxIndexes, // default size + 10, // default size 1, // min size kMaxIndexes) // max size .WithValidationCallback(CHECK_RANGE(1, kMaxIndexes, kMaxIndexesConfig)) diff --git a/vmsdk/src/module_config.cc b/vmsdk/src/module_config.cc index 44bc491a0..4fb4585e0 100644 --- a/vmsdk/src/module_config.cc +++ b/vmsdk/src/module_config.cc @@ -34,7 +34,7 @@ template static T OnGetConfig(const char *config_name, void *priv_data) { auto entry = static_cast *>(priv_data); CHECK(entry) << "null private data for Boolean configuration entry."; - return static_cast(entry->GetValue()); + return entry->GetValue(); } template diff --git a/vmsdk/src/module_config.h b/vmsdk/src/module_config.h index 3d0a53abd..bdcd5b5b3 100644 --- a/vmsdk/src/module_config.h +++ b/vmsdk/src/module_config.h @@ -438,13 +438,15 @@ ConfigBuilder StringBuilder(Args &&...args) { return Builder(std::forward(args)...); } -#define CHECK_RANGE(MIN, MAX, CONFIG_NAME) \ - [](const int value) { \ - if (value < MIN || value > MAX) { \ - return absl::OutOfRangeError(absl::StrFormat( \ - "%s must be between %u and %u", CONFIG_NAME, MIN, MAX)); \ - } \ - return absl::OkStatus(); \ +#define CHECK_RANGE(MIN, MAX, CONFIG_NAME) \ + [](const auto& value) { \ + using T = std::decay_t; \ + if (value < static_cast(MIN) || value > static_cast(MAX)) {\ + return absl::OutOfRangeError(absl::StrFormat( \ + "%s must be between %v and %v", CONFIG_NAME, \ + static_cast(MIN), static_cast(MAX))); \ + } \ + return absl::OkStatus(); \ } } // namespace config From f6c2767a7abff09c0580ae2bc6de7762d0d2717b Mon Sep 17 00:00:00 2001 From: Shivshankar-Reddy Date: Thu, 25 Sep 2025 19:59:34 +0000 Subject: [PATCH 2/2] correct the format to fix ci Signed-off-by: Shivshankar-Reddy --- vmsdk/src/module_config.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/vmsdk/src/module_config.h b/vmsdk/src/module_config.h index bdcd5b5b3..cf90785c0 100644 --- a/vmsdk/src/module_config.h +++ b/vmsdk/src/module_config.h @@ -438,15 +438,15 @@ ConfigBuilder StringBuilder(Args &&...args) { return Builder(std::forward(args)...); } -#define CHECK_RANGE(MIN, MAX, CONFIG_NAME) \ - [](const auto& value) { \ - using T = std::decay_t; \ - if (value < static_cast(MIN) || value > static_cast(MAX)) {\ - return absl::OutOfRangeError(absl::StrFormat( \ - "%s must be between %v and %v", CONFIG_NAME, \ - static_cast(MIN), static_cast(MAX))); \ - } \ - return absl::OkStatus(); \ +#define CHECK_RANGE(MIN, MAX, CONFIG_NAME) \ + [](const auto &value) { \ + using T = std::decay_t; \ + if (value < static_cast(MIN) || value > static_cast(MAX)) { \ + return absl::OutOfRangeError( \ + absl::StrFormat("%s must be between %v and %v", CONFIG_NAME, \ + static_cast(MIN), static_cast(MAX))); \ + } \ + return absl::OkStatus(); \ } } // namespace config