Concurrent Chunk Management Engine (Fabric)

Concurrent Chunk Management Engine (Fabric)

231k Downloads

Increased closing (saving) the world from a few seconds to minute(s) when using dynview (fabric) mod

Zorklis opened this issue ยท 6 comments

commented

Describe the bug
So some time ago I noticed Minecraft is taking way too long time to save my world.
Then I rememebered C2ME having this bug before and sure enough removing it also remedied the long waste of time and then putting it back in brought it back. A quick 3 minute play session saved instantly without C2ME and then 1minute and 30 seconds with it. Longer sessions could be way longer

Runtime info (please complete the following information):

Additional context
This issue was fixed around March of this year
and has now came back in the most current version. To be honest it was in the previous build(s) too, I would just minimise mc and wouldn't really notice or care but it became annoying for me notice it.

Additional testing
Went back a few builds and c2me-fabric-mc1.20.1-0.2.0+alpha.10.93 still has it.
0.2.0+alpha.10.90 devbuild for 1.20.1 ; also had it

commented

Please follow the issue template to provide logs and other mods.

commented

Okay so on it's own (no mods but c2me and fabric api) it does not have the effect.
I tracked it down to 1 mod:
dynview-fabric-1.20.1-3.2

commented

Try reproduce with just dynview.
Also try reproduce with dynview chunkunload off with C2ME.

commented

Tried to reproduce with just DynView and everything saves fine.

just DynView.log
Just DynView and C2ME.log
kept the latest log of both.
Not sure how to do the chunkunload off.
latest3.log
In any case I'm gonna just delete dynview

commented

At the moment, you can replace dynview with ServerCore, which provides similar functionality.

commented

Related to KingContaria/FastQuit#37

Also from the source code of dynview for fabric 1.18.2 (as the source for 1.20.1 doesn't exist), it seems that they are holding chunks from unloading for 1201 ticks when chunkunload option turned on (default):
https://github.com/ldtteam/DynView/blob/0930b49cee2b4230af3f196c85c588c8f36c4eb4/src/main/java/com/dynview/mixin/ChunkTypeMixin.java#L20

C2ME always expects chunks with UNKNOWN tickets to expire shortly.
Also, this is keeping virtually every chunk from unloading when the server is running for a whole minute or even longer.
This should be fixed on their side.