update code level
This commit is contained in:
16
src/cache/mod.rs
vendored
16
src/cache/mod.rs
vendored
@@ -246,14 +246,20 @@ pub async fn refresh_all_caches(
|
||||
a
|
||||
}).collect();
|
||||
|
||||
let mut c = albums_cache.write().await;
|
||||
c.update(enriched);
|
||||
|
||||
// 2. 刷新标签(从 search.db)
|
||||
// 2. 刷新标签(tag→albums 倒排索引直接从已富化的 album 列表构建,零 DB 查询)
|
||||
let popular_tags = search_db.get_popular_tags(200).await;
|
||||
let tag_albums = search_db.get_all_tag_albums().await;
|
||||
let mut tag_albums: HashMap<String, Vec<AlbumInfo>> = HashMap::new();
|
||||
for album in &enriched {
|
||||
for tag in &album.tags {
|
||||
tag_albums.entry(tag.clone()).or_default().push(album.clone());
|
||||
}
|
||||
}
|
||||
let mut tc = tags_cache.write().await;
|
||||
tc.update(popular_tags, tag_albums);
|
||||
|
||||
// 3. 刷新相册缓存(依赖 enriched 数据,必须在标签刷新之后执行)
|
||||
let mut c = albums_cache.write().await;
|
||||
c.update(enriched);
|
||||
}
|
||||
|
||||
// 3. 刷新人物(从 search.db)
|
||||
|
||||
Reference in New Issue
Block a user