diff --git a/CHANGELOG.md b/CHANGELOG.md index 98866c83911d69caab0a35a371bcac2c763d6e9d..ebb287de18a52836c018667f640864855019bb2a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ Please mark all change in change log and use the issue from GitHub - \#2368 Make read node detect delete behavior - \#2394 Drop collection timeout if too many partitions created on collection - \#2549 Launch server fail using demo config +- \#2564 cache.cache_size range check error ## Feature - \#2363 Update branch version diff --git a/ci/jenkins/Jenkinsfile b/ci/jenkins/Jenkinsfile index e35b429c65ada7602d5e7211a7425cfdadaebc8d..2143c8e7b7565402f867039c67f98cb1ec5eb6f1 100644 --- a/ci/jenkins/Jenkinsfile +++ b/ci/jenkins/Jenkinsfile @@ -1,7 +1,7 @@ #!/usr/bin/env groovy String cron_timezone = "TZ=Asia/Shanghai" -String cron_string = BRANCH_NAME == "master" ? "38 0 * * * " : "" +String cron_string = BRANCH_NAME == "0.10.0" ? "50 22 * * * " : "" pipeline { agent none diff --git a/core/src/config/Config.cpp b/core/src/config/Config.cpp index cabd6f7c81d51d5ac24921d5a73354615cca4de2..ea88878d151cfb360a5efb4ce5bf167ad8099656 100644 --- a/core/src/config/Config.cpp +++ b/core/src/config/Config.cpp @@ -1327,7 +1327,7 @@ Config::CheckCacheConfigCpuCacheCapacity(const std::string& value) { std::string str = GetConfigStr(CONFIG_CACHE, CONFIG_CACHE_INSERT_BUFFER_SIZE, "0"); - int64_t insert_buffer_size = parse_bytes(value, err); + int64_t insert_buffer_size = parse_bytes(str, err); fiu_do_on("Config.CheckCacheConfigCpuCacheCapacity.large_insert_buffer", insert_buffer_size = total_mem + 1); if (insert_buffer_size + cache_size >= total_mem) { std::string msg = "Invalid cpu cache size: " + value + diff --git a/core/unittest/server/test_config.cpp b/core/unittest/server/test_config.cpp index 3e3c5e17fd3eff09764fdf3c18dd49bed4d5f4e9..da41b875ccddea8085a238809a4cce6f44b85b1f 100644 --- a/core/unittest/server/test_config.cpp +++ b/core/unittest/server/test_config.cpp @@ -256,6 +256,30 @@ TEST_F(ConfigTest, SERVER_CONFIG_VALID_TEST) { ASSERT_TRUE(config.GetCacheConfigCacheInsertData(bool_val).ok()); ASSERT_TRUE(bool_val == cache_insert_data); + { + // #2564 + int64_t total_mem = 0, free_mem = 0; + milvus::server::CommonUtil::GetSystemMemInfo(total_mem, free_mem); + ASSERT_TRUE(config.SetCacheConfigInsertBufferSize("1GB").ok()); + int64_t cache_cpu_cache_size = total_mem / 2; + float cache_cpu_cache_threshold = 0.7; + ASSERT_TRUE(config.SetCacheConfigCpuCacheThreshold(std::to_string(cache_cpu_cache_threshold)).ok()); + ASSERT_TRUE(config.SetCacheConfigCpuCacheCapacity(std::to_string(cache_cpu_cache_size)).ok()); + ASSERT_TRUE(config.GetCacheConfigCpuCacheCapacity(int64_val).ok()); + ASSERT_TRUE(int64_val == cache_cpu_cache_size); + } + + { + int64_t total_mem = 0, free_mem = 0; + milvus::server::CommonUtil::GetSystemMemInfo(total_mem, free_mem); + ASSERT_TRUE(config.SetCacheConfigInsertBufferSize("1GB").ok()); + int64_t cache_cpu_cache_size = total_mem - 1073741824 - 1; // total_size - 1GB - 1 + ASSERT_TRUE(config.SetCacheConfigCpuCacheCapacity(std::to_string(cache_cpu_cache_size)).ok()); + ASSERT_TRUE(config.GetCacheConfigCpuCacheCapacity(int64_val).ok()); + ASSERT_TRUE(int64_val == cache_cpu_cache_size); + } + + /* engine config */ int64_t engine_use_blas_threshold = 50; ASSERT_TRUE(config.SetEngineConfigUseBlasThreshold(std::to_string(engine_use_blas_threshold)).ok());