Skip to content

MCStat Plugin v1.1.5

Choose a tag to compare

@umutxyp umutxyp released this 15 Sep 17:28
· 4 commits to main since this release

Fixes heartbeats being rejected as HTTP 401 / HTTP 429 on busy servers.

What was wrong. The plugin stamped X-Timestamp and signed the request when the call was built. OkHttp only dispatches 5 calls per host at a time, so whenever the API was slow, calls waited in the queue and went out carrying a stamp that was already too old — the server rejected them as expired. In the console that reads as server stats rejected: HTTP 401, which looks like a broken API key even though the key was fine. The rejected calls were then retried, and the retries tripped the rate limit, adding HTTP 429.

What changed. An interceptor now stamps and signs every request at the moment it is actually sent, so a call that waited in the queue — or a retry — always carries a fresh signature.

The server side of this was fixed at the same time: the ingest endpoint no longer stalls behind hourly maintenance writes, a database hiccup answers 503 instead of a misleading 401, and plugin telemetry has its own rate-limit budget so a network sending from one IP is not throttled.

Upgrading is optional but recommended. 1.1.4 works against the fixed API. To upgrade: stop the server, replace the jar, start it again. Config is unchanged.

File Platform
McStat-Spigot-1.1.5.jar Spigot / Paper / Purpur / Folia
McStat-Velocity-1.1.5.jar Velocity
McStat-BungeeCord-1.1.5.jar BungeeCord / Waterfall