|
1 | | -use crate::content_type::require_json_content_type; |
2 | 1 | use std::{ |
3 | 2 | sync::Arc, |
4 | 3 | time::{Duration, Instant}, |
@@ -752,13 +751,13 @@ pub async fn content( |
752 | 751 | let cursor = query.cursor(); |
753 | 752 | let endpoint = "content"; |
754 | 753 |
|
755 | | - let cache_key = keys::api_content(limit); |
| 754 | + let cache_key = keys::api_content(limit.into()); |
756 | 755 | let ttl = Duration::from_secs(60 * 60); |
757 | 756 |
|
758 | 757 | let (payload, hit) = state |
759 | 758 | .cache |
760 | 759 | .get_or_set_json(&cache_key, ttl, || async { |
761 | | - let data = state.db.content_cached(limit).await?; |
| 760 | + let data = state.db.content_cached(limit.into()).await?; |
762 | 761 | Ok(data) |
763 | 762 | }) |
764 | 763 | .await |
@@ -974,11 +973,11 @@ pub async fn blockchain_user_bets( |
974 | 973 |
|
975 | 974 | let page_data = state |
976 | 975 | .blockchain |
977 | | - .user_bets_page(&user, page, page_size) |
| 976 | + .user_bets_page(&user, page, page_size.into()) |
978 | 977 | .await |
979 | 978 | .map_err(into_api_error)?; |
980 | 979 |
|
981 | | - let has_more = (page + 1) * page_size < page_data.total; |
| 980 | + let has_more = (page + 1) * (page_size as i64) < page_data.total; |
982 | 981 | let next_cursor = if has_more { |
983 | 982 | Some((page + 1).to_string()) |
984 | 983 | } else { |
@@ -1080,13 +1079,13 @@ pub async fn warm_critical_caches(state: Arc<AppState>) -> anyhow::Result<()> { |
1080 | 1079 |
|
1081 | 1080 | let (mut succeeded, mut failed) = (0usize, 0usize); |
1082 | 1081 |
|
1083 | | - warm!("db.statistics", state.db.statistics_cached().map(|r| r.map(|_| ())), succeeded, failed); |
1084 | | - warm!("db.featured_markets", state.db.featured_markets_cached(state.config.featured_limit).map(|r| r.map(|_| ())), succeeded, failed); |
1085 | | - warm!("blockchain.health", state.blockchain.health_check_cached().map(|r| r.map(|_| ())), succeeded, failed); |
1086 | | - warm!("blockchain.platform_stats", state.blockchain.platform_statistics_cached().map(|r| r.map(|_| ())), succeeded, failed); |
1087 | | - warm!("api.statistics", statistics(State(state.clone())).map(|r| r.map(|_| ()).map_err(|e| anyhow::anyhow!("{e:?}"))), succeeded, failed); |
1088 | | - warm!("api.featured_markets", featured_markets(State(state.clone()), Query(PaginationQuery::default())).map(|r| r.map(|_| ()).map_err(|e| anyhow::anyhow!("{e:?}"))), succeeded, failed); |
1089 | | - warm!("api.content", content(State(state.clone()), Query(PaginationQuery::default())).map(|r| r.map(|_| ()).map_err(|e| anyhow::anyhow!("{e:?}"))), succeeded, failed); |
| 1082 | + warm!("db.statistics", state.db.statistics_cached(), succeeded, failed); |
| 1083 | + warm!("db.featured_markets", state.db.featured_markets_cached(state.config.featured_limit), succeeded, failed); |
| 1084 | + warm!("blockchain.health", state.blockchain.health_check_cached(), succeeded, failed); |
| 1085 | + warm!("blockchain.platform_stats", state.blockchain.platform_statistics_cached(), succeeded, failed); |
| 1086 | + warm!("api.statistics", async { statistics(State(state.clone())).await.map(|_| ()).map_err(|e| anyhow::anyhow!("{e:?}")) }, succeeded, failed); |
| 1087 | + warm!("api.featured_markets", async { featured_markets(State(state.clone()), Query(PaginationQuery::default())).await.map(|_| ()).map_err(|e| anyhow::anyhow!("{e:?}")) }, succeeded, failed); |
| 1088 | + warm!("api.content", async { content(State(state.clone()), Query(PaginationQuery::default())).await.map(|_| ()).map_err(|e| anyhow::anyhow!("{e:?}")) }, succeeded, failed); |
1090 | 1089 |
|
1091 | 1090 | tracing::info!(succeeded, failed, total = succeeded + failed, "cache warming complete"); |
1092 | 1091 | Ok(()) |
|
0 commit comments