Skip to content

Commit

Permalink
rename zset_cache_start_direction (#2358)
Browse files Browse the repository at this point in the history
Co-authored-by: chejinge <chejinge@360.cn>
  • Loading branch information
chejinge and brother-jin authored Jan 31, 2024
1 parent 82a061e commit 574c9f9
Show file tree
Hide file tree
Showing 11 changed files with 51 additions and 51 deletions.
4 changes: 2 additions & 2 deletions include/pika_cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ struct CacheInfo {

class PikaCache : public pstd::noncopyable, public std::enable_shared_from_this<PikaCache> {
public:
PikaCache(int zset_cache_start_pos, int zset_cache_field_num_per_key);
PikaCache(int zset_cache_start_direction, int zset_cache_field_num_per_key);
~PikaCache();

rocksdb::Status Init(uint32_t cache_num, cache::CacheConfig *cache_cfg);
Expand Down Expand Up @@ -215,7 +215,7 @@ class PikaCache : public pstd::noncopyable, public std::enable_shared_from_this<
uint32_t cache_num_ = 0;

// currently only take effects to zset
int zset_cache_start_pos_ = 0;
int zset_cache_start_direction_ = 0;
int zset_cache_field_num_per_key_ = 0;
std::shared_mutex rwlock_;
std::unique_ptr<PikaCacheLoadThread> cache_load_thread_;
Expand Down
4 changes: 2 additions & 2 deletions include/pika_cache_load_thread.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@

class PikaCacheLoadThread : public net::Thread {
public:
PikaCacheLoadThread(int zset_cache_start_pos, int zset_cache_field_num_per_key);
PikaCacheLoadThread(int zset_cache_start_direction, int zset_cache_field_num_per_key);
~PikaCacheLoadThread() override;

uint64_t AsyncLoadKeysNum(void) { return async_load_keys_num_; }
Expand Down Expand Up @@ -47,7 +47,7 @@ class PikaCacheLoadThread : public net::Thread {
std::atomic_uint64_t async_load_keys_num_;
std::atomic_uint32_t waitting_load_keys_num_;
// currently only take effects to zset
int zset_cache_start_pos_;
int zset_cache_start_direction_;
int zset_cache_field_num_per_key_;
std::shared_ptr<PikaCache> cache_;
};
Expand Down
8 changes: 4 additions & 4 deletions include/pika_conf.h
Original file line number Diff line number Diff line change
Expand Up @@ -334,7 +334,7 @@ class PikaConf : public pstd::BaseConf {
int GetCacheNum() { return cache_num_; }
void SetCacheNum(const int value) { cache_num_ = value; }
void SetCacheModel(const int value) { cache_model_ = value; }
void SetCacheStartPos(const int value) { zset_cache_start_pos_ = value; }
void SetCacheStartDirection(const int value) { zset_cache_start_direction_ = value; }
void SetCacheItemsPerKey(const int value) { zset_cache_field_num_per_key_ = value; }
void SetCacheMaxmemory(const int64_t value) { cache_maxmemory_ = value; }
void SetCacheMaxmemoryPolicy(const int value) { cache_maxmemory_policy_ = value; }
Expand Down Expand Up @@ -630,7 +630,7 @@ class PikaConf : public pstd::BaseConf {
}

const std::string scache_type() {
std::lock_guard l(rwlock_);
std::shared_lock l(rwlock_);
return pstd::StringConcat(cache_type_, COMMA);
}

Expand All @@ -645,7 +645,7 @@ class PikaConf : public pstd::BaseConf {

void SetCacheType(const std::string &value);
void SetCacheDisableFlag() { tmp_cache_disable_flag_ = true; }
int zset_cache_start_pos() { return zset_cache_start_pos_; }
int zset_cache_start_direction() { return zset_cache_start_direction_; }
int zset_cache_field_num_per_key() { return zset_cache_field_num_per_key_; }
int cache_maxmemory_policy() { return cache_maxmemory_policy_; }
int cache_maxmemory_samples() { return cache_maxmemory_samples_; }
Expand Down Expand Up @@ -770,7 +770,7 @@ class PikaConf : public pstd::BaseConf {
std::atomic_int cache_hash_;
std::atomic_int cache_list_;
std::atomic_int cache_bit_;
std::atomic_int zset_cache_start_pos_;
std::atomic_int zset_cache_start_direction_;
std::atomic_int zset_cache_field_num_per_key_;
std::atomic_int cache_maxmemory_policy_;
std::atomic_int cache_maxmemory_samples_;
Expand Down
2 changes: 1 addition & 1 deletion include/pika_server.h
Original file line number Diff line number Diff line change
Expand Up @@ -477,7 +477,7 @@ class PikaServer : public pstd::noncopyable {
void ClearCacheDbAsyncV2(std::shared_ptr<DB> db);
void ResetCacheConfig(std::shared_ptr<DB> db);
void ClearHitRatio(std::shared_ptr<DB> db);
void OnCacheStartPosChanged(int zset_cache_start_pos, std::shared_ptr<DB> db);
void OnCacheStartPosChanged(int zset_cache_start_direction, std::shared_ptr<DB> db);
void UpdateCacheInfo(void);
void ResetDisplayCacheInfo(int status, std::shared_ptr<DB> db);
void CacheConfigInit(cache::CacheConfig &cache_cfg);
Expand Down
6 changes: 3 additions & 3 deletions src/cache/include/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,23 +44,23 @@ struct CacheConfig {
int32_t maxmemory_policy; /* Policy for key eviction */
int32_t maxmemory_samples; /* Precision of random sampling */
int32_t lfu_decay_time; /* LFU counter decay factor. */
int32_t zset_cache_start_pos;
int32_t zset_cache_start_direction;
int32_t zset_cache_field_num_per_key;

CacheConfig()
: maxmemory(CACHE_DEFAULT_MAXMEMORY)
, maxmemory_policy(CACHE_NO_EVICTION)
, maxmemory_samples(CACHE_DEFAULT_MAXMEMORY_SAMPLES)
, lfu_decay_time(CACHE_DEFAULT_LFU_DECAY_TIME)
, zset_cache_start_pos(CACHE_START_FROM_BEGIN)
, zset_cache_start_direction(CACHE_START_FROM_BEGIN)
, zset_cache_field_num_per_key(DEFAULT_CACHE_ITEMS_PER_KEY){}

CacheConfig& operator=(const CacheConfig& obj) {
maxmemory = obj.maxmemory;
maxmemory_policy = obj.maxmemory_policy;
maxmemory_samples = obj.maxmemory_samples;
lfu_decay_time = obj.lfu_decay_time;
zset_cache_start_pos = obj.zset_cache_start_pos;
zset_cache_start_direction = obj.zset_cache_start_direction;
zset_cache_field_num_per_key = obj.zset_cache_field_num_per_key;
return *this;
}
Expand Down
6 changes: 3 additions & 3 deletions src/pika_admin.cc
Original file line number Diff line number Diff line change
Expand Up @@ -2088,7 +2088,7 @@ void ConfigCmd::ConfigGet(std::string& ret) {
if (pstd::stringmatch(pattern.data(), "zset-cache-start-direction", 1)) {
elements += 2;
EncodeString(&config_body, "zset-cache-start-direction");
EncodeNumber(&config_body, g_pika_conf->zset_cache_start_pos());
EncodeNumber(&config_body, g_pika_conf->zset_cache_start_direction());
}

if (pstd::stringmatch(pattern.data(), "zset-cache-field-num-per-key", 1)) {
Expand Down Expand Up @@ -2561,9 +2561,9 @@ void ConfigCmd::ConfigSet(std::shared_ptr<DB> db) {
res_.AppendStringRaw("-ERR Invalid zset-cache-start-direction\r\n");
return;
}
auto origin_start_pos = g_pika_conf->zset_cache_start_pos();
auto origin_start_pos = g_pika_conf->zset_cache_start_direction();
if (origin_start_pos != ival) {
g_pika_conf->SetCacheStartPos(ival);
g_pika_conf->SetCacheStartDirection(ival);
g_pika_server->OnCacheStartPosChanged(ival, db);
}
res_.AppendStringRaw("+OK\r\n");
Expand Down
46 changes: 23 additions & 23 deletions src/pika_cache.cc
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@ extern PikaServer* g_pika_server;
#define EXTEND_CACHE_SIZE(N) (N * 12 / 10)
using rocksdb::Status;

PikaCache::PikaCache(int zset_cache_start_pos, int zset_cache_field_num_per_key)
PikaCache::PikaCache(int zset_cache_start_direction, int zset_cache_field_num_per_key)
: cache_status_(PIKA_CACHE_STATUS_NONE),
cache_num_(0),
zset_cache_start_pos_(zset_cache_start_pos),
zset_cache_start_direction_(zset_cache_start_direction),
zset_cache_field_num_per_key_(EXTEND_CACHE_SIZE(zset_cache_field_num_per_key)) {
cache_load_thread_ = std::make_unique<PikaCacheLoadThread> (zset_cache_start_pos_, zset_cache_field_num_per_key_);
cache_load_thread_ = std::make_unique<PikaCacheLoadThread> (zset_cache_start_direction_, zset_cache_field_num_per_key_);
cache_load_thread_->StartThread();
}

Expand Down Expand Up @@ -61,9 +61,9 @@ Status PikaCache::Reset(uint32_t cache_num, cache::CacheConfig *cache_cfg) {

void PikaCache::ResetConfig(cache::CacheConfig *cache_cfg) {
std::lock_guard l(rwlock_);
zset_cache_start_pos_ = cache_cfg->zset_cache_start_pos;
zset_cache_start_direction_ = cache_cfg->zset_cache_start_direction;
zset_cache_field_num_per_key_ = EXTEND_CACHE_SIZE(cache_cfg->zset_cache_field_num_per_key);
LOG(WARNING) << "zset_cache_start_pos: " << zset_cache_start_pos_ << ", zset_cache_field_num_per_key: " << zset_cache_field_num_per_key_;
LOG(WARNING) << "zset-cache-start-direction: " << zset_cache_start_direction_ << ", zset_cache_field_num_per_key: " << zset_cache_field_num_per_key_;
cache::RedisCache::SetConfig(cache_cfg);
}

Expand Down Expand Up @@ -821,7 +821,7 @@ Status PikaCache::ZAddIfKeyExist(std::string& key, std::vector<storage::ScoreMem
}
auto cache_min_score = cache_min_sm.score;
auto cache_max_score = cache_max_sm.score;
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
if (max_score < cache_max_score) {
cache_obj->ZAdd(key, new_score_members);
} else {
Expand Down Expand Up @@ -850,7 +850,7 @@ Status PikaCache::ZAddIfKeyExist(std::string& key, std::vector<storage::ScoreMem
cache_obj->ZRem(key, members_need_remove);
}
}
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
if (min_score > cache_min_score) {
cache_obj->ZAdd(key, new_score_members);
} else {
Expand Down Expand Up @@ -893,10 +893,10 @@ Status PikaCache::CleanCacheKeyIfNeeded(cache::RedisCache *cache_obj, std::strin
if (cache_len > (unsigned long)zset_cache_field_num_per_key_) {
long start = 0;
long stop = 0;
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
start = -cache_len + zset_cache_field_num_per_key_;
stop = -1;
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
start = 0;
stop = cache_len - zset_cache_field_num_per_key_ - 1;
}
Expand Down Expand Up @@ -949,7 +949,7 @@ RangeStatus PikaCache::CheckCacheRangeByScore(uint64_t cache_len, double cache_m
bool cache_full = (cache_len == (unsigned long)zset_cache_field_num_per_key_);

if (cache_full) {
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
bool ret = (max < cache_max);
if (ret) {
if (max < cache_min) {
Expand All @@ -960,7 +960,7 @@ RangeStatus PikaCache::CheckCacheRangeByScore(uint64_t cache_len, double cache_m
} else {
return RangeStatus::RangeMiss;
}
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
bool ret = min > cache_min;
if (ret) {
if (min > cache_max) {
Expand All @@ -975,7 +975,7 @@ RangeStatus PikaCache::CheckCacheRangeByScore(uint64_t cache_len, double cache_m
return RangeStatus::RangeError;
}
} else {
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
bool ret = right_close ? max < cache_max : max <= cache_max;
if (ret) {
if (max < cache_min) {
Expand All @@ -986,7 +986,7 @@ RangeStatus PikaCache::CheckCacheRangeByScore(uint64_t cache_len, double cache_m
} else {
return RangeStatus::RangeMiss;
}
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
bool ret = left_close ? min > cache_min : min >= cache_min;
if (ret) {
if (min > cache_max) {
Expand Down Expand Up @@ -1108,7 +1108,7 @@ Status PikaCache::ZIncrbyIfKeyExist(std::string& key, std::string& member, doubl
return s;
};

if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
if (cmd->Score() > cache_max_score) {
return RemCacheKeyMember(member);
} else if (cmd->Score() == cache_max_score) {
Expand All @@ -1120,7 +1120,7 @@ Status PikaCache::ZIncrbyIfKeyExist(std::string& key, std::string& member, doubl
CleanCacheKeyIfNeeded(cache_obj, key);
return s;
}
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
if (cmd->Score() > cache_min_score) {
std::vector<storage::ScoreMember> score_member = {{cmd->Score(), member}};
auto s = cache_obj->ZAdd(key, score_member);
Expand All @@ -1147,13 +1147,13 @@ RangeStatus PikaCache::CheckCacheRange(int32_t cache_len, int32_t db_len, int64_
if (out_start > out_stop || out_start >= db_len || out_stop < 0) {
return RangeStatus::RangeError;
} else {
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
if (out_start < cache_len && out_stop < cache_len) {
return RangeStatus::RangeHit;
} else {
return RangeStatus::RangeMiss;
}
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
if (out_start >= db_len - cache_len && out_stop >= db_len - cache_len) {
out_start = out_start - (db_len - cache_len);
out_stop = out_stop - (db_len - cache_len);
Expand All @@ -1176,7 +1176,7 @@ RangeStatus PikaCache::CheckCacheRevRange(int32_t cache_len, int32_t db_len, int
if (start_index > stop_index || start_index >= db_len || stop_index < 0) {
return RangeStatus::RangeError;
} else {
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
if (start_index < cache_len && stop_index < cache_len) {
// cache reverse index
out_start = cache_len - stop_index - 1;
Expand All @@ -1186,7 +1186,7 @@ RangeStatus PikaCache::CheckCacheRevRange(int32_t cache_len, int32_t db_len, int
} else {
return RangeStatus::RangeMiss;
}
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
if (start_index >= db_len - cache_len && stop_index >= db_len - cache_len) {
int cache_start = start_index - (db_len - cache_len);
int cache_stop = stop_index - (db_len - cache_len);
Expand Down Expand Up @@ -1275,7 +1275,7 @@ Status PikaCache::ZRank(std::string& key, std::string& member, int64_t *rank, co
} else {
auto s = cache_obj->ZRank(CachePrefixKeyZ, member, rank);
if (s.ok()) {
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
int32_t db_len = 0;
db->storage()->ZCard(key, &db_len);
*rank = db_len - cache_len + *rank;
Expand Down Expand Up @@ -1321,7 +1321,7 @@ Status PikaCache::ZRemrangebyrank(std::string& key, std::string &min, std::strin
return Status::NotFound("error range");
}

if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
if ((uint32_t)start_index <= cache_len) {
auto cache_min_str = std::to_string(start_index);
auto cache_max_str = std::to_string(stop_index);
Expand All @@ -1331,7 +1331,7 @@ Status PikaCache::ZRemrangebyrank(std::string& key, std::string &min, std::strin
} else {
return Status::NotFound("error range");
}
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
if ((uint32_t)stop_index >= db_len - cache_len) {
int32_t cache_min = start_index - (db_len - cache_len);
int32_t cache_max = stop_index - (db_len - cache_len);
Expand Down Expand Up @@ -1465,7 +1465,7 @@ Status PikaCache::ZRevrank(std::string& key, std::string& member, int64_t *rank,
} else {
auto s = cache_obj->ZRevrank(CachePrefixKeyZ, member, rank);
if (s.ok()) {
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
int32_t db_len = 0;
db->storage()->ZCard(key, &db_len);
*rank = db_len - cache_len + *rank;
Expand Down
8 changes: 4 additions & 4 deletions src/pika_cache_load_thread.cc
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@

extern PikaServer* g_pika_server;

PikaCacheLoadThread::PikaCacheLoadThread(int zset_cache_start_pos, int zset_cache_field_num_per_key)
PikaCacheLoadThread::PikaCacheLoadThread(int zset_cache_start_direction, int zset_cache_field_num_per_key)
: should_exit_(false)
, loadkeys_cond_()
, async_load_keys_num_(0)
, waitting_load_keys_num_(0)
, zset_cache_start_pos_(zset_cache_start_pos)
, zset_cache_start_direction_(zset_cache_start_direction)
, zset_cache_field_num_per_key_(zset_cache_field_num_per_key)
{
set_thread_name("PikaCacheLoadThread");
Expand Down Expand Up @@ -144,11 +144,11 @@ bool PikaCacheLoadThread::LoadZset(std::string& key, const std::shared_ptr<DB>&
if (cache_len != 0) {
return true;
}
if (zset_cache_start_pos_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_start_direction_ == cache::CACHE_START_FROM_BEGIN) {
if (zset_cache_field_num_per_key_ <= len) {
stop_index = zset_cache_field_num_per_key_ - 1;
}
} else if (zset_cache_start_pos_ == cache::CACHE_START_FROM_END) {
} else if (zset_cache_start_direction_ == cache::CACHE_START_FROM_END) {
if (zset_cache_field_num_per_key_ <= len) {
start_index = len - zset_cache_field_num_per_key_;
}
Expand Down
12 changes: 6 additions & 6 deletions src/pika_conf.cc
Original file line number Diff line number Diff line change
Expand Up @@ -495,12 +495,12 @@ int PikaConf::Load() {
GetConfStr("cache-type", &cache_type);
SetCacheType(cache_type);

int zset_cache_start_pos = 0;
GetConfInt("zset-cache-start-direction", &zset_cache_start_pos);
if (zset_cache_start_pos != cache::CACHE_START_FROM_BEGIN && zset_cache_start_pos != cache::CACHE_START_FROM_END) {
zset_cache_start_pos = cache::CACHE_START_FROM_BEGIN;
int zset_cache_start_direction = 0;
GetConfInt("zset-cache-start-direction", &zset_cache_start_direction);
if (zset_cache_start_direction != cache::CACHE_START_FROM_BEGIN && zset_cache_start_direction != cache::CACHE_START_FROM_END) {
zset_cache_start_direction = cache::CACHE_START_FROM_BEGIN;
}
zset_cache_start_pos_ = zset_cache_start_pos;
zset_cache_start_direction_ = zset_cache_start_direction;

int zset_cache_field_num_per_key = DEFAULT_CACHE_ITEMS_PER_KEY;
GetConfInt("zset-cache-field-num-per-key", &zset_cache_field_num_per_key);
Expand Down Expand Up @@ -672,7 +672,7 @@ int PikaConf::ConfigRewrite() {
SetConfInt("block-cache", block_cache_);
SetConfStr("cache-index-and-filter-blocks", cache_index_and_filter_blocks_ ? "yes" : "no");
SetConfInt("cache-model", cache_model_);
SetConfInt("zset_cache_start_pos", zset_cache_start_pos_);
SetConfInt("zset-cache-start-direction", zset_cache_start_direction_);
SetConfInt("zset_cache_field_num_per_key", zset_cache_field_num_per_key_);

if (!diff_commands_.empty()) {
Expand Down
2 changes: 1 addition & 1 deletion src/pika_db.cc
Original file line number Diff line number Diff line change
Expand Up @@ -369,7 +369,7 @@ bool DB::InitBgsaveEngine() {
}

void DB::Init() {
cache_ = std::make_shared<PikaCache>(g_pika_conf->zset_cache_start_pos(), g_pika_conf->zset_cache_field_num_per_key());
cache_ = std::make_shared<PikaCache>(g_pika_conf->zset_cache_start_direction(), g_pika_conf->zset_cache_field_num_per_key());
// Create cache
cache::CacheConfig cache_cfg;
g_pika_server->CacheConfigInit(cache_cfg);
Expand Down
4 changes: 2 additions & 2 deletions src/pika_server.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1799,7 +1799,7 @@ void PikaServer::ResetCacheConfig(std::shared_ptr<DB> db) {
cache_cfg.maxmemory_policy = g_pika_conf->cache_maxmemory_policy();
cache_cfg.maxmemory_samples = g_pika_conf->cache_maxmemory_samples();
cache_cfg.lfu_decay_time = g_pika_conf->cache_lfu_decay_time();
cache_cfg.zset_cache_start_pos = g_pika_conf->zset_cache_start_pos();
cache_cfg.zset_cache_start_direction = g_pika_conf->zset_cache_start_direction();
cache_cfg.zset_cache_field_num_per_key = g_pika_conf->zset_cache_field_num_per_key();
db->cache()->ResetConfig(&cache_cfg);
}
Expand All @@ -1808,7 +1808,7 @@ void PikaServer::ClearHitRatio(std::shared_ptr<DB> db) {
db->cache()->ClearHitRatio();
}

void PikaServer::OnCacheStartPosChanged(int zset_cache_start_pos, std::shared_ptr<DB> db) {
void PikaServer::OnCacheStartPosChanged(int zset_cache_start_direction, std::shared_ptr<DB> db) {
ResetCacheConfig(db);
ClearCacheDbAsync(db);
}
Expand Down

0 comments on commit 574c9f9

Please sign in to comment.