Skip to content

Release 2.1.1 - #19

Merged
tastybento merged 4 commits into
masterfrom
develop
Aug 27, 2026
Merged

Release 2.1.1#19
tastybento merged 4 commits into
masterfrom
develop

Conversation

@tastybento

Copy link
Copy Markdown
Member

Patch release: fixes periodic server lag spikes caused by the top ten refresh reading the whole island database on the main thread. The database read now runs async; only island registry/permission lookups stay on the main thread (#18).

No config, locale, or data format changes.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Um9roAZ8pVAqp6TZEMBjMr

tastybento and others added 4 commits August 26, 2026 20:56
The refresh task ran hook.getAllIslandData() on the main thread every
refresh cycle. In both game modes that is a full synchronous database
read (Database#loadObjects()), which deserializes every island record
ever created and was profiled at up to ~1s per cycle on large servers.

refresh(hook) now loads the island data on an async task and hops back
to the main thread only for the cheap part: island registry lookups,
player/permission checks, and swapping in the new top ten. Placeholder
snapshots update per hook as each async load lands.

Bump version to 2.1.1.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Um9roAZ8pVAqp6TZEMBjMr
Load island data off the main thread to fix periodic lag spikes
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Um9roAZ8pVAqp6TZEMBjMr
@sonarqubecloud

Copy link
Copy Markdown

@tastybento
tastybento merged commit 610aee5 into master Aug 27, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant