bugfix: Use correct cache key in closure
This commit is contained in:
parent
9b6ba5784a
commit
37f2e15333
1 changed files with 8 additions and 5 deletions
|
|
@ -43,6 +43,8 @@ pub fn list_by_volume(
|
|||
let limit = limit.unwrap_or(1000);
|
||||
let limit = std::cmp::min(limit, 1000);
|
||||
|
||||
let cache_key = function_name!().to_owned();
|
||||
|
||||
let db_copy = db.inner().clone();
|
||||
let run_query = move || {
|
||||
#[allow(clippy::type_complexity)]
|
||||
|
|
@ -86,7 +88,7 @@ pub fn list_by_volume(
|
|||
|
||||
let (response_age, result) = if use_cache {
|
||||
let lock = response_cache.lock().unwrap();
|
||||
if let Some((time, value)) = lock.get(function_name!()) {
|
||||
if let Some((time, value)) = lock.get(&cache_key) {
|
||||
(Some(*time), value.clone())
|
||||
} else {
|
||||
(None, run_query()?)
|
||||
|
|
@ -99,7 +101,7 @@ pub fn list_by_volume(
|
|||
if let Some(t) = response_age {
|
||||
// (potentially) update query for next request
|
||||
if time_now() > t - 60 {
|
||||
info!("update for cached value of {} triggered", function_name!());
|
||||
info!("update for cached value of {} triggered", cache_key);
|
||||
let cache_copy = response_cache.inner().clone();
|
||||
std::thread::spawn(move || {
|
||||
match run_query() {
|
||||
|
|
@ -107,10 +109,11 @@ pub fn list_by_volume(
|
|||
cache_copy
|
||||
.lock()
|
||||
.unwrap()
|
||||
.insert(function_name!().to_owned(), (time_now(), r));
|
||||
.insert(cache_key.clone(), (time_now(), r));
|
||||
info!("Updated cached value for {}", cache_key)
|
||||
}
|
||||
Err(e) => {
|
||||
warn!("Failed to update cache for {}: {:?}", function_name!(), e)
|
||||
warn!("Failed to update cache for {}: {:?}", cache_key, e)
|
||||
}
|
||||
};
|
||||
});
|
||||
|
|
@ -120,7 +123,7 @@ pub fn list_by_volume(
|
|||
response_cache
|
||||
.lock()
|
||||
.unwrap()
|
||||
.insert(function_name!().to_owned(), (time_now(), result.clone()));
|
||||
.insert(cache_key, (time_now(), result.clone()));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue