diff --git a/board-server/src/leaderboard.rs b/board-server/src/leaderboard.rs index f68d8c2..8a4ddb3 100644 --- a/board-server/src/leaderboard.rs +++ b/board-server/src/leaderboard.rs @@ -4,6 +4,7 @@ use std::env; use std::sync::Arc; const LEADERBOARD: &str = "leaderboard"; +const LEADERBOARD_SIZE: isize = 10; type LeaderboardEntry = (String, u32); #[async_trait] @@ -37,7 +38,7 @@ impl Leaderboard for RedisLeaderboard { let mut con = self.client.get_async_connection().await?; let count: isize = con.zcard(LEADERBOARD).await?; let leaderboard: Vec = - con.zrange_withscores(LEADERBOARD, 0, count - 1).await?; + con.zrange_withscores(LEADERBOARD, 0, (count - 1).min(LEADERBOARD_SIZE)).await?; Ok(leaderboard) }