[Bug]: Performance Multiverse-Core Minecraft 1.18.2
Fredo1650 opened this issue · 8 comments
/mv version -p
output
Multiverse-Core v4.3.2-SNAPSHOT-b870
Server logs
<script src="https://gist.github.com/Fredo1650/809a96e31689f8309d76eda7dbd229ae.js"></script>Server Version
Paper version git-Paper-250 (MC: 1.18.2)
Bug Description
The plugin seems to freeze on startup.
The plugin takes more Ram memory than usual, the settings are still the same except the version of minecraft which has changed 1.18.1 --> 1.18.2
I also tested with only 1 plugin (multiverse-Core), the result was the same.
While waiting for an expertise of this problem.
Best regards Fredo
Minecraft 1.18.1
[19:08:52 INFO]: [Multiverse-Core] Enabling Multiverse-Core v4.3.2-SNAPSHOT-b870
[19:08:52 WARN]: [Multiverse-Core] "Multiverse-Core v4.3.2-SNAPSHOT-b870" has registered a listener for org.bukkit.event.entity.EntityCreatePortalEvent on method "public void com.onarandombox.MultiverseCore.listeners.MVPortalListener.entityPortalCreate(org.bukkit.event.entity.EntityCreatePortalEvent)", but the event is Deprecated. "Server performance will be affected"; please notify the authors [dumptruckman, Rigby, fernferret, lithium3141, main--].
[19:08:52 INFO]: [Multiverse-Core] We are aware of the warning about the deprecated event. There is no alternative that allows us to do what we need to do and performance impact is negligible. It is safe to ignore.
[19:08:53 INFO]: Preparing start region for dimension minecraft:world_the_end
[19:08:53 INFO]: Time elapsed: 220 ms
[19:08:53 INFO]: Preparing start region for dimension minecraft:world
[19:08:53 INFO]: Time elapsed: 236 ms
[19:08:53 INFO]: Preparing start region for dimension minecraft:world_nether
[19:08:54 INFO]: Time elapsed: 251 ms
[19:08:57 INFO]: [TerraformGenerator] Detected world: Eldaria, commencing injection...
[19:08:57 INFO]: [TerraformGenerator] Injection success! Proceeding with generation.
[19:08:58 INFO]: [TerraformGenerator] Eldaria loaded.
[19:08:58 INFO]: [TerraformGenerator] Detected world: Edowin, commencing injection...
[19:08:58 INFO]: [TerraformGenerator] Injection success! Proceeding with generation.
[19:08:58 INFO]: [TerraformGenerator] Edowin loaded.
[19:08:58 INFO]: [Multiverse-Core] 12 - World(s) loaded.
[19:08:58 INFO]: [Multiverse-Core] Version 4.3.2-SNAPSHOT-b870 (API v24) Enabled - By dumptruckman, Rigby, fernferret, lithium3141 and main--
[19:08:58 INFO]: Running delayed init tasks
[19:08:58 INFO]: Done (9.151s)! For help, type "help"
Minecraft 1.18.2
[18:52:31 INFO]: [Multiverse-Core] Enabling Multiverse-Core v4.3.2-SNAPSHOT-b870
[18:52:31 WARN]: [Multiverse-Core] "Multiverse-Core v4.3.2-SNAPSHOT-b870" has registered a listener for org.bukkit.event.entity.EntityCreatePortalEvent on method "public void com.onarandombox.MultiverseCore.listeners.MVPortalListener.entityPortalCreate(org.bukkit.event.entity.EntityCreatePortalEvent)", but the event is Deprecated. "Server performance will be affected"; please notify the authors [dumptruckman, Rigby, fernferret, lithium3141, main--].
[18:52:31 INFO]: [Multiverse-Core] §aWe are aware of the warning about the deprecated event. There is no alternative that allows us to do what we need to do and performance impact is negligible. It is safe to ignore.
[18:52:48 INFO]: [TerraformGenerator] Detected world: Eldaria, commencing injection...
[18:52:48 INFO]: [TerraformGenerator] Injection success! Proceeding with generation.
[18:52:48 INFO]: [TerraformGenerator] Eldaria loaded.
[18:52:49 INFO]: [TerraformGenerator] Detected world: Edowin, commencing injection...
[18:52:49 INFO]: [TerraformGenerator] Injection success! Proceeding with generation.
[18:52:49 INFO]: [TerraformGenerator] Edowin loaded.
[18:52:49 INFO]: [Multiverse-Core] 12 - World(s) loaded.
[18:52:49 INFO]: [Multiverse-Core] Version 4.3.2-SNAPSHOT-b870 (API v24) Enabled - By dumptruckman, Rigby, fernferret, lithium3141 and main--
[18:52:49 INFO]: Running delayed init tasks
[18:52:49 INFO]: Done (21.076s)! For help, type "help"
[18:52:49 INFO]: Timings Reset
Steps to reproduce
.
Agreements
- I have searched for and ensured there isn't already an open or resolved issue(s) regarding this.
- I was able to reproduce my issue on a freshly setup and up-to-date server with the latest version of Multiverse plugins with no other plugins and with no kinds of other server or client mods.
Hello,
I just performed the /timings command as you asked me, my current server is in 1.18.2, I compared the two versions 1.18.1/1.18.2, only 2 plugins at startup on a test server, I notice that the boot time ends up more than double 1.18.1 (8.247s)! / 1.18.2 (22.769s)! with the same setup.
I did another try disabling loading worlds on startup as you asked, this one started in a few seconds, but I need all worlds to load as I'm using Multiverse-Portals as well as The Gate 0.2.2mc1.18.2 plugin
-------------- Démarrage du Serveur Minecraft 1.18.1 ---------------
-------------------------------------------------------------------------------
Starting org.bukkit.craftbukkit.Main
System Info: Java 17 (Java HotSpot(TM) 64-Bit Server VM 17.0.2+8-LTS-86) Host: Windows 10 10.0 (amd64)
Loading libraries, please wait...
[14:48:15 INFO]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD'
[14:48:16 INFO]: Reloading ResourceManager: Default, bukkit
[14:48:17 INFO]: Loaded 7 recipes
[14:48:18 INFO]: Starting minecraft server version 1.18.1
[14:48:18 INFO]: Loading properties
[14:48:19 INFO]: This server is running Paper version git-Paper-216 (MC: 1.18.1) (Implementing API version 1.18.1-R0.1-SNAPSHOT) (Git: 30cb7d0)
[14:48:19 INFO]: Server Ping Player Sample Count: 12
[14:48:19 INFO]: Using 4 threads for Netty based IO
[14:48:19 INFO]: Default game type: SURVIVAL
[14:48:19 INFO]: Generating keypair
[14:48:19 INFO]: Starting Minecraft server on *:25567
[14:48:19 INFO]: Using default channel type
[14:48:19 INFO]: Paper: Using Java 11 compression from Velocity.
[14:48:19 INFO]: Paper: Using Java cipher from Velocity.
[14:48:20 INFO]: [TerraformGenerator] Loading TerraformGenerator v7.0.2
[14:48:20 INFO]: [Multiverse-Core] Loading Multiverse-Core v4.3.2-SNAPSHOT-b870
[14:48:20 INFO]: Server permissions file permissions.yml is empty, ignoring it
[14:48:20 INFO]: [TerraformGenerator] Enabling TerraformGenerator v7.0.2
[14:48:20 INFO]: New config version detected. Overwriting old config. A backup will be made
[14:48:21 INFO]: [TerraformGenerator] Custom Logger Initialized
[14:48:21 INFO]: [TerraformGenerator] bStats Metrics enabled.
[14:48:21 INFO]: [TerraformGenerator] Detected version: v1_18_R1, number: 18.1
[14:48:21 INFO]: Preparing level "Stargate"
[14:48:22 INFO]: Preparing start region for dimension minecraft:overworld
[14:48:23 INFO]: Time elapsed: 324 ms
[14:48:23 INFO]: Preparing start region for dimension minecraft:the_nether
[14:48:23 INFO]: Time elapsed: 147 ms
[14:48:23 INFO]: Preparing start region for dimension minecraft:the_end
[14:48:23 INFO]: Time elapsed: 100 ms
[14:48:23 INFO]: [Multiverse-Core] Enabling Multiverse-Core v4.3.2-SNAPSHOT-b870
[14:48:23 WARN]: [Multiverse-Core] "Multiverse-Core v4.3.2-SNAPSHOT-b870" has registered a listener for org.bukkit.event.entity.EntityCreatePortalEvent on method "public void com.onarandombox.MultiverseCore.listeners.MVPortalListener.entityPortalCreate(org.bukkit.event.entity.EntityCreatePortalEvent)", but the event is Deprecated. "Server performance will be affected"; please notify the authors [dumptruckman, Rigby, fernferret, lithium3141, main--].
[14:48:23 INFO]: [Multiverse-Core] We are aware of the warning about the deprecated event. There is no alternative that allows us to do what we need to do and performance impact is negligible. It is safe to ignore.
[14:48:25 INFO]: [TerraformGenerator] Detected world: Eldaria, commencing injection...
[14:48:25 INFO]: [TerraformGenerator] Injection success! Proceeding with generation.
[14:48:26 INFO]: [TerraformGenerator] Eldaria loaded.
[14:48:27 INFO]: [TerraformGenerator] Detected world: Edowin, commencing injection...
[14:48:27 INFO]: [TerraformGenerator] Injection success! Proceeding with generation.
[14:48:27 INFO]: [TerraformGenerator] Edowin loaded.
[14:48:27 INFO]: [Multiverse-Core] 9 - World(s) loaded.
[14:48:27 INFO]: [Multiverse-Core] Version 4.3.2-SNAPSHOT-b870 (API v24) Enabled - By dumptruckman, Rigby, fernferret, lithium3141 and main--
[14:48:27 INFO]: Running delayed init tasks
[14:48:27 INFO]: Done (8.247s)! For help, type "help"
[14:48:27 INFO]: Timings Reset
timings paste
[14:51:44 INFO]: Preparing Timings Report...
[14:51:45 INFO]: View Timings Report: https://timings.aikar.co/?id=30b70f051a894423980b409942ff77f2
-------------- Démarrage du Serveur Minecraft 1.18.2 ---------------
-----------------------------------------------------------------------------
Starting org.bukkit.craftbukkit.Main
System Info: Java 17 (Java HotSpot(TM) 64-Bit Server VM 17.0.2+8-LTS-86) Host: Windows 10 10.0 (amd64)
Loading libraries, please wait...
[14:58:44 INFO]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD'
[14:58:46 INFO]: Loaded 7 recipes
[14:58:48 INFO]: Starting minecraft server version 1.18.2
[14:58:48 INFO]: Loading properties
[14:58:48 INFO]: This server is running Paper version git-Paper-265 (MC: 1.18.2) (Implementing API version 1.18.2-R0.1-SNAPSHOT) (Git: 993f828)
[14:58:48 INFO]: Server Ping Player Sample Count: 12
[14:58:48 INFO]: Using 4 threads for Netty based IO
[14:58:48 INFO]: Default game type: SURVIVAL
[14:58:48 INFO]: Generating keypair
[14:58:49 INFO]: Starting Minecraft server on *:25567
[14:58:49 INFO]: Using default channel type
[14:58:49 INFO]: Paper: Using Java 11 compression from Velocity.
[14:58:49 INFO]: Paper: Using Java cipher from Velocity.
[14:58:49 INFO]: [TerraformGenerator] Loading TerraformGenerator v7.0.2
[14:58:49 INFO]: [Multiverse-Core] Loading Multiverse-Core v4.3.2-SNAPSHOT-b870
[14:58:49 INFO]: Server permissions file permissions.yml is empty, ignoring it
[14:58:49 INFO]: [TerraformGenerator] Enabling TerraformGenerator v7.0.2
[14:58:49 INFO]: [TerraformGenerator] Custom Logger Initialized
[14:58:49 INFO]: [TerraformGenerator] bStats Metrics enabled.
[14:58:49 INFO]: [TerraformGenerator] Detected version: v1_18_R2, number: 18.2
[14:58:50 INFO]: Preparing level "Stargate"
[14:58:51 INFO]: Preparing start region for dimension minecraft:overworld
[14:58:51 INFO]: Time elapsed: 359 ms
[14:58:51 INFO]: Preparing start region for dimension minecraft:the_nether
[14:58:51 INFO]: Time elapsed: 181 ms
[14:58:51 INFO]: Preparing start region for dimension minecraft:the_end
[14:58:52 INFO]: Time elapsed: 156 ms
[14:58:52 INFO]: [Multiverse-Core] Enabling Multiverse-Core v4.3.2-SNAPSHOT-b870
[14:58:52 WARN]: [Multiverse-Core] "Multiverse-Core v4.3.2-SNAPSHOT-b870" has registered a listener for org.bukkit.event.entity.EntityCreatePortalEvent on method "public void com.onarandombox.MultiverseCore.listeners.MVPortalListener.entityPortalCreate(org.bukkit.event.entity.EntityCreatePortalEvent)", but the event is Deprecated. "Server performance will be affected"; please notify the authors [dumptruckman, Rigby, fernferret, lithium3141, main--].
[14:58:52 INFO]: [Multiverse-Core] §aWe are aware of the warning about the deprecated event. There is no alternative that allows us to do what we need to do and performance impact is negligible. It is safe to ignore.
[14:59:06 INFO]: [TerraformGenerator] Detected world: Eldaria, commencing injection...
[14:59:06 INFO]: [TerraformGenerator] Injection success! Proceeding with generation.
[14:59:06 INFO]: [TerraformGenerator] Eldaria loaded.
[14:59:11 INFO]: [TerraformGenerator] Detected world: Edowin, commencing injection...
[14:59:11 INFO]: [TerraformGenerator] Injection success! Proceeding with generation.
[14:59:11 INFO]: [TerraformGenerator] Edowin loaded.
[14:59:11 INFO]: [Multiverse-Core] 9 - World(s) loaded.
[14:59:11 INFO]: [Multiverse-Core] Version 4.3.2-SNAPSHOT-b870 (API v24) Enabled - By dumptruckman, Rigby, fernferret, lithium3141 and main--
[14:59:11 INFO]: Running delayed init tasks
[14:59:11 INFO]: Done (22.769s)! For help, type "help"
[14:59:11 INFO]: Timings Reset
timings paste
[15:02:17 INFO]: Preparing Timings Report...
[15:02:18 INFO]: View Timings Report: https://timings.aikar.co/?id=4e08f8641029477db475f9ba7b0e36e0
Could it be that 1.18.2 has to now convert the 1.18.1 chunks to 1.18.2 format on the fly. The content below y=0 . For every world MVC needs to load its world spawn , convert it and load it to memory . You could set do not load worlds at start up. You can check with /timings report .
I'm running compile 20ce469 , not noticing anything out of the ordinary with 6 worlds and only loading the primary world at startup .Here is my timing report and plugins for Paper 1.18.2 b265 https://timings.aikar.co/?id=7ce3287e6249459fa929be9620cfd9c5
try the switch --forceupgrade to upgrade the server from 1,18,1 ti 1.18.2 . forcing all the spawn chunks into memory is done by the server requires lot of resources. Disabling them to start at boot doesn't stop them from getting loaded ,they just get loaded as needed . Multiversecore is just a manager. if there is a freeze its probably the server is frozen. I have no problems , I compiled latest commit
If the different in performance is caused by a change in server jar file, then you should contact the devs for that. From the explanations above, I can't see anything caused by mv.
hello, I used the switch --forceupgrade to upgrade the server from 1,18,1 ti 1.18.2, it did not change anything to the original problem, why the startup is 3 times longer just after the update to 1.18.2, before that start almost immediately in 1.18.1 ?
keep-spawn-loaded: false
the difference is after the line:
[Multiverse-Core] §aWe are aware of the warning about the deprecated event. There is no alternative that allows us to do what we need to do and the performance impact is negligible. It is prudent to ignore it.
Best regards, Fredo
17.04 16:45:25 [Server] INFO [Multiverse-Core] ?aWe are aware of the warning about the deprecated event. There is no alternative that allows us to do what we need to do and performance impact is negligible. It is safe to ignore.
17.04 16:45:25 [Server] WARN [Multiverse-Core] "Multiverse-Core v4.3.1-b861" has registered a listener for org.bukkit.event.entity.EntityCreatePortalEvent on method "public void com.onarandombox.MultiverseCore.listeners.MVPortalListener.entityPortalCreate(org.bukkit.event.entity.EntityCreatePortalEvent)", but the event is Deprecated. "Server performance will be affected"; please notify the authors [dumptruckman, Rigby, fernferret, lithium3141, main--].
Hoping to clear this up for any eyes still eyeballing this (however unlikely).
The deprecated event certainly has nothing to do with startup time, as it would be problematic when the server is actually finished loading and players are online. However, with the way that Multiverse uses the EntityCreatePortalEvent
is not going to affect your server performance. The event registration isn't going to cause this dramatic stall on start-up, as MV is able to register the event and report on the warning, so we know it's not hanging there.
Seconding what Tsoccerguy3 said, Multiverse is responsible for managing what worlds are loaded, but it doesn't do anything beyond yell at the server to load the world, so we can only be so responsible.
Finally, this issue should probably be closed, and the author has reported (in the linked issue to PaperMC above) that their issues have been resolved, so we can likely make a safe assumption that world loading performance has been affected by the server and not MV.