NoLagg

Version: 1.90.4 | CB 1.7.2
Quote from lenis0012:NoLagg has not been updated since 1.7.10, for more info, check BKCommonLib
Description
NoLagg is made out of multiple completely separate components which you can enable and disable freely. Together they offer:
- Send chunks more gracefully with lowered network stress and reduced processing spikes Read more...
- Remove entities, resend chunks in case of chunk holes and clean up server memory Read more...
- Examine server tick rate performance with deep view into per-tick processes of the server Read more...
- Stop a large amount of items from spawning and spawn at a later time to avoid frozen clients Read more...
- Stack items with a configurable per-world radius Read more...
- Fix lighting errors that cause clients to recalculate lighting (and thus lag) Read more...
- Keep track of server performance such as entities, tick rate, memory and more Read more...
- Fix various bugs the server has (Patches component)
- Schedule autosaves and force data to be written to disk to prevent data loss on server crash (Saving component)
- Limit the amount of entities allowed to spawn per world or globally Read more...
- Watch events closely to warn when plugins execute main-thread methods from another thread Read more...
- Show a detailed message explaining the cause for a server freeze (lock) [read more]
- New TNT execution algortithm that is not only more efficient, but also avoids server freezes Read more...
Important
When first installing NoLagg, open up config.yml and disable components you do not need. This is very important, as some components may conflict with other plugins you use, or may not function on the type of demand you have. If you get a warning message [Severe] followed up with a stack trace in the log, this has to do with the main thread not having responded within 10 seconds. The warning is NOT an error and is no bug, and not a bug related to NoLagg. To disable this feature, disable 'threadlocknotifier' in the config.yml. This feature is mainly intended to notify you what plugin is causing the server to freeze, may it ever happen. It is used to debug plugins in general, as they may get stuck for whatever reason. If NoLagg DOES show up in there, it is a bug you should report.
FAQ
Separating into jar files
NoLagg consists of multiple components you can individually enable and disable. Reasons for not publishing it as a separate jar file for every component can be read here. Please don't ask to separate the components, I will just link you to here.
Spigot server
Not all components are needed when you use the Spigot server. The ItemStacker, ItemBuffer, Spawn Limiter, Thread Checker and Thread Lock Notifier components are not needed, since Spigot has it's own implementations to deal with that. If you still wish to use one of these components, you can, but it's best to disable the Spigot alternative then.
The other components (such as TNT, Chunks, Lighting, Common, etc.) are not implemented in Spigot (yet?) and offer additional functionality.
PTweaks
Since people keep asking about this, I went ahead and compared the two plugins. I am not going to discuss which is better in functionality, I'm just going to state which features overlap and which do not. Both plugins offer a TNT-lag solving solution, feel free to choose which solution you like better. (the solutions are different) Both plugins also offer a way to change when and how chunks are saved, NoLagg adds to this that you can configure when the server writes data to disk. PTweaks offers a way of showing used memory, NoLagg Monitor too with a bit more information. Again, preference. Chunk Persistence is something PTweaks offers and NoLagg does not. Reason I excluded it from NoLagg is that the implementation used up more processing power than that it solved (I did have this for a while). If you want to give it a try, PTweaks is your answer. Monster Limiter is incorporated in NoLagg as well but then for all entities, and more options. ChunkEdits is a tricky one: NoLagg chunks does something similar, with the difference being that it also changes at what rate chunks are sent, which is the main feature NoLagg chunks offers. In addition, the ability to increase the amount of threads running to process chunk packets and the re-using of packet raw data offers some benefits PTweaks does not offer.
Then there are a lot of other features NoLagg has and PTweaks does not, such as examining server tick rate, item stacker, item buffer, fixing lighting, cleaning up server memory, resending chunks, removing entities on command and others (see description).
In short: Both plugins offer some overlapping features, and you need to pay close attention to the configuration of PTweaks and NoLagg and disable things that conflict. Having two TNT explosion altering plugins is going to have strange results, for example. Compare the functionality, decide, and enable in NoLagg what you do not want in PTweaks, and vice versa.
NoLagg showing up in error stack traces
The examine component inserts various hooks into the server to gather measurements. Specifically, you will find that the following lines show up now and then. These hook classes do absolutely nothing when not examining and can not be the cause for any issues, unless the stack trace ends there (first line after the exception shows this stack trace)
- org.timedbukkit.craftbukkit.*
- com.bergerkiller.bukkit.common.internal.ChunkProviderServerHook
Video
Here is a video by BlueDevonMovies (lenis0012):
Metrics
This plugin sends server count statistics to MCStats.org. You can (globally) opt out in the PluginMetrics/config.yml file.







-
View User Profile
-
Send Message
Posted Jan 23, 2012@wow4201 It also works on 1798 (the very VERY latest version AFAIK) I sure hope the Bukkit dev team did fix that error, as it is quite hazardous.
-
View User Profile
-
Send Message
Posted Jan 23, 2012@wow4201
https://github.com/bergerkiller/NoLagg/downloads
-
View User Profile
-
Send Message
Posted Jan 23, 2012Where do i download 1.58.4? On the right side of this page under recent files I see NoLagg version 1.58.3 (CB1796) for Listed at the top.
My Error report is using 1.58.3 using CB1796. Was I suppose to be using a higher version of CB?
-
View User Profile
-
Send Message
Posted Jan 23, 2012@wow4201 You need to update CraftBukkit, it's a known bug that has been fixed.
Also, updated to 1.58.4. It greatly improves chunk sending some more, as it had slow-sending issues when a lot of players were connected. It also improves stability of the sending rate and improves the adjustments made on user connection, preventing overflow errors or long delays. Even if your connection can barely survive a single chunk, this plugin will know how to deal with it appropriately ;)
If you had slow sending issues, I strongly recommend you update it now.
-
View User Profile
-
Send Message
Posted Jan 23, 2012It seems to be functioning better however.
With 5 threads enabled, 0.2for min 0.3max All that loading chunks into memory was disabled.
After about 8 mins server crashed with about 70ppl online
2012-01-23 06:39:34 [INFO] jacobtherock427 [/68.205.9.250:56620] logged in with entity id 4183 at ([UberMineCraft] -1634.2429968376337, 52.0, -2034.4548571558394) 2012-01-23 06:39:34 [INFO] Fetching addPacket for removed entity: CraftItem 2012-01-23 06:39:34 [SEVERE] java.lang.NullPointerException 2012-01-23 06:39:34 [SEVERE] at net.minecraft.server.NetServerHandler.sendPacket(NetServerHandler.java:685) 2012-01-23 06:39:34 [SEVERE] at net.minecraft.server.EntityTrackerEntry.b(EntityTrackerEntry.java:191) 2012-01-23 06:39:34 [SEVERE] at net.minecraft.server.EntityTracker.updatePlayers(EntityTracker.java:144) 2012-01-23 06:39:34 [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:541) 2012-01-23 06:39:34 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:434) 2012-01-23 06:39:34 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:465) 2012-01-23 06:39:34 [SEVERE] Unexpected exception java.lang.NullPointerException at net.minecraft.server.NetServerHandler.sendPacket(NetServerHandler.java:685) at net.minecraft.server.EntityTrackerEntry.b(EntityTrackerEntry.java:191) at net.minecraft.server.EntityTracker.updatePlayers(EntityTracker.java:144) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:541) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:434) at net.minecraft.server.ThreadServerApplication.run(SourceFile:465)
It does look like things are getting a lot better though, Keep up the good work :)
-
View User Profile
-
Send Message
Posted Jan 23, 2012it seems to be fixed. how to donate?
-
View User Profile
-
Send Message
Posted Jan 22, 2012@XeonG8 It probably works for later builds as well, since most fields used now are already named by Bukkit. I'll do a test run on the latest build later in the day.
@Gnintendo Use /nolagg monitor or /nolagg stat and read the 'packet compression busy:' value. If this is pretty high (red?), then you need to use more threads. Ore obfuscator takes quite a lot of processing power to run.
@Squirzy What is Bulkier? Never heard of it before... (or do you mean it happens during the latest CraftBukkit updates?)
-
View User Profile
-
Send Message
Posted Jan 22, 2012@bergerkiller
No spout isn't installed, I thinks it's just conflicts with the dev bulkier updates as when I update bulkier it doesn't happen for about and hour or two. Then it happens again
-
View User Profile
-
Send Message
Posted Jan 22, 2012server complaining about lag after update when I enabled the chunk sending features (was using .2 with chunk sending disabled, no complaints there)
I have it set to 3 threads
I'm using Orebfuscator How many threads would you recommend...?
-
View User Profile
-
Send Message
Posted Jan 22, 2012good stuff on fixing the slowness I thought it seemed slower. still i'm reluctant to put it back on
1795/1796 had these errors.. http://forums.bukkit.org/threads/bukkit-error.55845/
nothing to do with nolagg, but you only updated to those builds so I have to wait for a different one.
-
View User Profile
-
Send Message
Posted Jan 22, 2012@Gnintendo Slow chunk loading is now resolved in version 1.58.3. It took me several hours to debug all of this (with a friend, thank you silencshadow). Found out it was adding chunks to the queue infinitely, causing chunks to be sent 3 times or even more. This caused high network usage and thus lag.
All of that is now solved, it is also improved to boost performance to peak level.
-
View User Profile
-
Send Message
Posted Jan 21, 2012Other people are still reporting slow chunks, so still waiting for you to figure that out....
-
View User Profile
-
Send Message
Posted Jan 21, 2012@Liger_XT5
I could be mistaken. (do a backup in case) that sounds like a chunk error. I would run chunkster on it to see if you can fix the issue. This has happened to me before awhile back, and it showed up the exact same way. I ran chunkster and it fixed my problem.
AGAIN if you do this, backup things just in case.
-
View User Profile
-
Send Message
Posted Jan 21, 2012Should really enable the ticket system for people having issues and reporting bugs.
I did a full install of nolagg, miner changes to config, and I get this error:
-
View User Profile
-
Send Message
Posted Jan 21, 2012this plugin do on my server overflow chunks are loading slow
-
View User Profile
-
Send Message
Posted Jan 21, 2012@bergerkiller
Chunks were sending fine with low numbers of players, but once it got to about 25, packet sending completely died compared to normal bukkit + spout. I'll try 1.58.2 and let you know..
-
View User Profile
-
Send Message
Posted Jan 21, 2012@Gnintendo No, because it works fine here. Still investigating somewhat, you can try the 1.58.2 version where I (blindedly) added some changes that could prevent it. Since I can't see if it solves an issue (I have no issue), I have no idea if it fixes it completely.
I do know that it fixes a Spout queue size issue, memory indicator issue and high->low priority packet sending issue. If it fixes the slow rate, I don't know.
-
View User Profile
-
Send Message
Posted Jan 21, 2012Do you know why chunks are sending so slowly?
-
View User Profile
-
Send Message
Posted Jan 21, 2012@Squirzy @wow4201 Are you using Spout on your server, or not? And I have heard others say the same, and I saw it myself, but for some reason it refuses to happen on my local server...
-
View User Profile
-
Send Message
Posted Jan 21, 2012@wow4201
"Edit: Actually seem to be getting lots of read time outs and server hangs and crashes"
Yeah same I get Read Times out errors every 10-20mins. I unfortunately had to remove the plugin until it got fixed