Try to fix getting old logs (#11568)

This commit is contained in:
wrexbe
2022-09-27 21:16:04 -07:00
committed by GitHub
parent 079e741eeb
commit 277f555fda

View File

@@ -742,26 +742,14 @@ namespace Content.Server.Database
if (filter.AnyPlayers != null)
{
var players = await db.AdminLogPlayer
.Where(player => filter.AnyPlayers.Contains(player.PlayerUserId))
.ToListAsync();
if (players.Count > 0)
{
query = from log in query
join player in db.AdminLogPlayer on log.Id equals player.LogId
where filter.AnyPlayers.Contains(player.Player.UserId)
select log;
}
query = query.Where(log => log.Players.Any(p => filter.AnyPlayers.Contains(p.PlayerUserId)));
}
if (filter.AllPlayers != null)
{
// TODO ADMIN LOGGING
query = query.Where(log => log.Players.All(p => filter.AllPlayers.Contains(p.PlayerUserId)));
}
query = query.Distinct();
if (filter.LastLogId != null)
{
query = filter.DateOrder switch
@@ -781,9 +769,14 @@ namespace Content.Server.Database
$"Unknown {nameof(DateOrder)} value {filter.DateOrder}")
};
const int hardLogLimit = 500_000;
if (filter.Limit != null)
{
query = query.Take(filter.Limit.Value);
query = query.Take(Math.Min(filter.Limit.Value, hardLogLimit));
}
else
{
query = query.Take(hardLogLimit);
}
return query;