Skip to content

perf(api): look up guild member names in one query - #1007

Open
ugcodrr wants to merge 9 commits into
mainfrom
fix/guild-member-names
Open

ugcodrr wants to merge 9 commits into
mainfrom
fix/guild-member-names

Conversation

@ugcodrr

@ugcodrr ugcodrr commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

Description: Guild refreshes spent most of their time looking up expired member names individually in the database.

If that name query fails, the refresh now errors instead of saving ERROR names for the guild's members.

A 125-member guild with all names expired and its players already in Mongo refreshed in about 15 ms instead of 280 ms.

Merge before #1037.

Merge order for the perf PRs is in #1002.

Testing: fetch a guild live, set its members' expiresAt to 0 in Mongo, and fetch it again. Every member keeps the same name.

A guild refresh looked up each expired member name through PlayerService.get,
one findOne and a full deserialize per member. Fetch them all with one find and
a projection; members it doesn't find still go through PlayerService.
@vercel

vercel Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
statsify Ignored Ignored Nov 5, 2026 8:06am UTC

@vercel

vercel Bot commented Nov 2, 2026

Copy link
Copy Markdown

Deployment failed for project statsify with the following error:

Resource is limited - try again in 24 hours (more than 100, code: "api-deployments-free-per-day").

Learn More: https://vercel.com/statsify-net?upgradeToPro=build-rate-limit

@ugcodrr
ugcodrr added this pull request to stack #1118 November 2, 2026 03:46
@ugcodrr
ugcodrr marked this pull request as draft November 3, 2026 04:28
@ugcodrr
ugcodrr marked this pull request as ready for review November 3, 2026 04:46
@ugcodrr ugcodrr changed the title fix(api): look up guild member names in one query perf(api): look up guild member names in one query Nov 5, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant