allowing disk use for leaderboard aggregation

This commit is contained in:
Jack 2021-10-05 15:08:54 +01:00
parent 738ddce0af
commit 447ab9dfc4

View file

@ -34,41 +34,44 @@ class LeaderboardsDAO {
let start1 = performance.now();
let lb = await mongoDB()
.collection("users")
.aggregate([
{
$match: {
[str + ".wpm"]: {
$exists: true,
.aggregate(
[
{
$match: {
[str + ".wpm"]: {
$exists: true,
},
[str + ".acc"]: {
$exists: true,
},
[str + ".timestamp"]: {
$exists: true,
},
banned: { $exists: false },
},
[str + ".acc"]: {
$exists: true,
},
{
$set: {
[str + ".uid"]: "$uid",
[str + ".name"]: "$name",
[str + ".discordId"]: "$discordId",
},
[str + ".timestamp"]: {
$exists: true,
},
{
$replaceRoot: {
newRoot: "$" + str,
},
banned: { $exists: false },
},
},
{
$set: {
[str + ".uid"]: "$uid",
[str + ".name"]: "$name",
[str + ".discordId"]: "$discordId",
{
$sort: {
wpm: -1,
acc: -1,
timestamp: -1,
},
},
},
{
$replaceRoot: {
newRoot: "$" + str,
},
},
{
$sort: {
wpm: -1,
acc: -1,
timestamp: -1,
},
},
])
],
{ allowDiskUse: true }
)
.toArray();
let end1 = performance.now();