fix cache.cache_size range check error (#2565)

* fix cache.cache_size range check error

Signed-off-by: wxyu <xy.wang@zilliz.com>

* update ci

Signed-off-by: wxyu <xy.wang@zilliz.com>
pull/2566/head
Wang XiangYu 2020-06-15 22:44:58 +08:00 committed by GitHub
parent d1311a7112
commit 5f3c005247
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 27 additions and 2 deletions

View File

@ -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

View File

@ -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

View File

@ -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 +

View File

@ -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());