aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Chris Lovering <[email protected]>2024-06-06 20:29:01 +0100
committerGravatar Chris Lovering <[email protected]>2024-06-06 20:29:24 +0100
commita03c02c94c9d514db872fafe88146a0e7ec81ea4 (patch)
tree550bd56974ee138ae9b4fc0c6473c0f0770324fc
parentBump metricity version to 2.6.0 (diff)
Use a generator instead of a list to store the members to sync
This reduces the memory required on bot startup
-rw-r--r--metricity/exts/event_listeners/startup_sync.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/metricity/exts/event_listeners/startup_sync.py b/metricity/exts/event_listeners/startup_sync.py
index 7ff5026..0f6264f 100644
--- a/metricity/exts/event_listeners/startup_sync.py
+++ b/metricity/exts/event_listeners/startup_sync.py
@@ -39,7 +39,7 @@ class StartupSyncer(commands.Cog):
await sess.execute(update(models.User).values(in_guild=False))
await sess.commit()
- users = [
+ users = (
{
"id": str(user.id),
"name": user.name,
@@ -54,12 +54,12 @@ class StartupSyncer(commands.Cog):
"pending": user.pending,
}
for user in guild.members
- ]
+ )
user_chunks = discord.utils.as_chunks(users, 500)
created = 0
updated = 0
- total_users = len(users)
+ total_users = len(guild.members)
log.info("Performing bulk upsert of %d rows in %d chunks", total_users, math.ceil(total_users / 500))