[Clientside-mod Addition Request]: Pack Analytics #667

Open
opened 2026-08-14 05:01:59 +02:00 by Griefed · 4 comments
Owner

@Joly0 on GitHub · https://github.com/Griefed/ServerPackCreator/issues/1234

https://www.curseforge.com/minecraft/mc-mods/pack-analytics

Up front, so you can judge it properly: this one isn't strictly clientside-only. It's a telemetry mod that reports player counts to the modpack author and it does run on servers by design. I'm requesting it because in its current state it breaks server shutdown, and it has no gameplay function a server owner would miss.

With Better Compatibility Checker 21.1.8 installed, PackAnalytics 1.0.5's SERVER_STOPPING handler throws NoClassDefFoundError: dev/wuffs/bcc/data/BetterStatusServerHolder (that class no longer exists in BCC). This produces a crash report on every clean stop, and because the error aborts the handler before its keepalive executor is shut down, a non-daemon thread survives and the JVM never exits. My panel then kills the process after its 60s timeout. Ships in Better MC [NEOFORGE] 1.21.1 v52, which is where I hit it.

Confirmed that removing the mod fixes it: with the jar disabled, the server stops cleanly in under a second, all dimensions save, no crash report is written and the panel no longer has to kill the process. With it enabled, every single stop ends in Server didn't stop after 60s, killing process.

Upstream report: https://github.com/txnimc/PackAnalytics/issues/4

I have informed the developer of the mod about their mod crashing a server

  • I have informed the developer

Code of Conduct

  • I agree to follow this project's Code of Conduct
<!-- repoman:origin --> > **@Joly0** on **GitHub** · https://github.com/Griefed/ServerPackCreator/issues/1234 ### The link to the project on CurseForge or Modrinth https://www.curseforge.com/minecraft/mc-mods/pack-analytics Up front, so you can judge it properly: this one isn't strictly clientside-only. It's a telemetry mod that reports player counts to the modpack author and it does run on servers by design. I'm requesting it because in its current state it breaks server shutdown, and it has no gameplay function a server owner would miss. With Better Compatibility Checker 21.1.8 installed, PackAnalytics 1.0.5's `SERVER_STOPPING` handler throws `NoClassDefFoundError: dev/wuffs/bcc/data/BetterStatusServerHolder` (that class no longer exists in BCC). This produces a crash report on every clean stop, and because the error aborts the handler before its keepalive executor is shut down, a non-daemon thread survives and the JVM never exits. My panel then kills the process after its 60s timeout. Ships in Better MC [NEOFORGE] 1.21.1 v52, which is where I hit it. Confirmed that removing the mod fixes it: with the jar disabled, the server stops cleanly in under a second, all dimensions save, no crash report is written and the panel no longer has to kill the process. With it enabled, every single stop ends in `Server didn't stop after 60s, killing process.` Upstream report: https://github.com/txnimc/PackAnalytics/issues/4 ### I have informed the developer of the mod about their mod crashing a server - [x] I have informed the developer ### Code of Conduct - [x] I agree to follow this project's Code of Conduct
Author
Owner

@Joly0 on GitHub

Following up on the one open point from the original post: I've now tested it properly, and disabling the mod does fix it. I've edited the description to say so.

For the record, same server, same pack, both stops requested the same way from the panel.

With PackAnalytics enabled:

[08:59:09] Stopping the application.
[08:59:09] [Server thread/INFO]: Stopping the server
[08:59:09] [Server thread/ERROR] EventBus: Exception caught during firing event: dev/wuffs/bcc/data/BetterStatusServerHolder
[08:59:09] [Server thread/FATAL]: Preparing crash report
[08:59:21] [Stuck Thread Watcher]: Stuck Thread: "pool-37-thread-1" Id=209
[08:59:21] [AllTheLeaks]: Seems like you crashed and the server got stuck, you might need to terminate the process!
[09:00:09] Server didn't stop after 60s, killing process.

With the jar renamed to .disabled:

[09:07:40] Stopping the application.
[09:07:40] [Server thread/INFO]: Stopping the server
[09:07:40] [Server thread/INFO]: Saving players / Saving worlds
[09:07:40] [Server thread/INFO]: ThreadedAnvilChunkStorage: All dimensions are saved

Whole shutdown finishes inside the same second, no crash report written, no stuck threads, and the panel never has to kill anything.

<!-- repoman:origin --> > **@Joly0** on **GitHub** Following up on the one open point from the original post: I've now tested it properly, and disabling the mod does fix it. I've edited the description to say so. For the record, same server, same pack, both stops requested the same way from the panel. With PackAnalytics enabled: ``` [08:59:09] Stopping the application. [08:59:09] [Server thread/INFO]: Stopping the server [08:59:09] [Server thread/ERROR] EventBus: Exception caught during firing event: dev/wuffs/bcc/data/BetterStatusServerHolder [08:59:09] [Server thread/FATAL]: Preparing crash report [08:59:21] [Stuck Thread Watcher]: Stuck Thread: "pool-37-thread-1" Id=209 [08:59:21] [AllTheLeaks]: Seems like you crashed and the server got stuck, you might need to terminate the process! [09:00:09] Server didn't stop after 60s, killing process. ``` With the jar renamed to `.disabled`: ``` [09:07:40] Stopping the application. [09:07:40] [Server thread/INFO]: Stopping the server [09:07:40] [Server thread/INFO]: Saving players / Saving worlds [09:07:40] [Server thread/INFO]: ThreadedAnvilChunkStorage: All dimensions are saved ``` Whole shutdown finishes inside the same second, no crash report written, no stuck threads, and the panel never has to kill anything.
Author
Owner

@Griefed on GitHub

Heya Joly0,

awesome investigation. Thanks for the report, as well as reporting this to the dev of the mod. Judging by the description of the CurseForge-project, it sounds like it's mostly aimed at clients, rather than servers.

I'll keep an eye on the upstream report.

Cheers,
Griefed

<!-- repoman:origin --> > **@Griefed** on **GitHub** Heya Joly0, awesome investigation. Thanks for the report, as well as reporting this to the dev of the mod. Judging by the description of the CurseForge-project, it sounds like it's mostly aimed at clients, rather than servers. I'll keep an eye on the upstream report. Cheers, Griefed
Author
Owner

@Joly0 on GitHub

Hey Griefed, thanks for the response. I have low hope that this will be fixed upstream, as there hasn't been any activity in the last 2 years in that repo.

<!-- repoman:origin --> > **@Joly0** on **GitHub** Hey Griefed, thanks for the response. I have low hope that this will be fixed upstream, as there hasn't been any activity in the last 2 years in that repo.
Author
Owner

@Griefed on GitHub

Ohhh, good point. I'll add it to the list, then.

<!-- repoman:origin --> > **@Griefed** on **GitHub** Ohhh, good point. I'll add it to the list, then.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Griefed/ServerPackCreator#667
No description provided.