Timings issue
mrunningmasterc opened this issue ยท 8 comments
Information
Full output of /ess version
:
>.... [12:57:59 INFO]: Server version: 1.15.2-R0.1-SNAPSHOT git-Paper-162 (MC: 1.15.2)
>.... [12:57:59 INFO]: EssentialsX version: 2.17.2.46
>.... [12:57:59 INFO]: PlaceholderAPI version: 2.10.4
>.... [12:57:59 INFO]: PermissionsEx version: 1.23.4
>.... [12:57:59 INFO]: Vault version: 1.7.2-b107
>.... [12:57:59 INFO]: Citizens version: 2.0.26-SNAPSHOT (build 1822)
>.... [12:57:59 INFO]: EssentialsXChat version: 2.17.2.46
>.... [12:57:59 INFO]: ChestShop version: 3.10 (build 165)
>.... [12:57:59 INFO]: EssentialsXProtect version: 2.17.2.46
>.... [12:57:59 INFO]: EssentialsXAntiBuild version: 2.17.2.46
>.... [12:57:59 INFO]: EssentialsXSpawn version: 2.17.2.46
>.... [12:57:59 INFO]: You are running unsupported plugins!
Server log: https://gist.github.com/mrunningmasterc/91f9e0801d5b7864e4c9f9653dccbfee
EssentialsX config: https://gist.github.com/mrunningmasterc/b5ae4bf51df4662c6824ee34fa1639b2
Details
Description
I am having a lot of timings issue on player login also other events like set home, a lot of cpu will jump on login and other various commands. I'm also having issue with teleporting out of a world. If i have a teleport delay, and it gets canceled they try to teleport out again with out moving, it wont teleport them out sometimes and they get stuck in that world. Ive had to temporarily remove the cancel on move.
Steps to reproduce
Login and Log out a bunch with players on, sethome, warp, warp out of a world with cancel on move.
Expected behavior
Cpu jumps, lots of high timings.
Timings
https://timings.aikar.co/?id=37af6a0c731340eba9495121184a67f3
I don't see any problems with Essentials in your timings. If you're having lag issues, consider running the server on better a host, or better hardware, optimizing your server's configuration, and using Aikar's flags as hinted in the timings report.
Yes, I saw that, but it's almost certainly not a significant source of lag on your server. If you have reasons to believe that it is, please explain in detail. I'm currently drawn to the conclusion that you don't know how timings work and you're making this issue because you think we can magically fix it for you. You'll have better luck fixing lag issues on your server using Aikar's startup flags, and optimizing your server configuration, rather than complaining about this particular event which shows up as red in the timings for a mere couple ticks.
I've looked at multiple resources and configured paper, bukkit, and spigot settings accurately. I've added plugins to help with entity tick and villager tick being that this is an smp server. I've already tried the aikar's startup flag but it crashed my server to on the start of launch, so i removed them, also reading up on his site that it is in the beta phase and there will a lot of bugs so I can't rely on that. I know how to read timings and I know its not the cause of the majority of the lag, but it gets annoying when the server tps drops when a player joins or uses /sethome or /spawn or any other command related to TP. I've had a similar issue on votingplugin and they were immediately able to tell me the issue with a config setting and its been fixed since. Now all thats left is this annoying spike that happens when 15-30 plus players join each day and run those commands along with the 12-15 that stay on to play.
You avoided my question which was why you thought that event was causing significant lag. Also, if you have 30 players on your server, please make a proper timings report for when your server is actually under full load. The one you linked has at most 2 players online and no indication of any significant lag from Essentials. If Aikar's flags are crashing your server, you're doing something horribly wrong. Also consider that your server hardware may not be good enough to support that many players. I don't know what kind of CPU you have, but the timings indicate you are running a 3 core processor and 7 GB of RAM. Doesn't strike me as particularly impressive. I have some timings for a similarly sized SMP server, and I cannot reproduce your results. Essentials doesn't show up in the lag tab of timings for at least a couple pages. I will repeat again - we can not and will not be able to magically fix your issue. I'm not trying to come across as rude, but that's the fact of the matter. Unless you have some substantial evidence to prove that there is a significant and addressable performance issue in Essentials, there is nothing to be fixed.
Thank you for you understanding. If you have further developments, feel free to ask for help on the Discord server.
PlayerCommandSendEvent
will only run when players log in, are opped or are deopped, as Spigot and EssentialsX both need to run hundreds of permissions checks (potentially thousands, depending on your plugins) to set up the 1.13+ autocomplete method. The only reason that EssentialsX's listener shows up in Timings is because most plugins use the standard Spigot system for checking the permissions of commands, meaning their delay is hidden amongst Spigot's internal functions, while we use our own system for this. This is always slow when using older permissions plugins such as PEX 1.23. In newer permissions systems which cache repeated permissions lookups (ie LuckPerms) this is significantly faster. If you want to improve the performance of permissions lookups across your entire server, you should switch to LuckPerms.