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 Oct 4, 2012I have just updated to 1.88.6 with BKLib 1.3 and I was wondering if this version has fixed the dropped items glitch? I really hope that it will be fixed. Also I know some java so ill look over NoLagg on Git later to see if i can find anything by glancing over it.
-
View User Profile
-
Send Message
Posted Oct 4, 2012@bergerkiller The nether missing chunk bug is caused by CraftBukkit (what a surprise) BUT, I thought I added fixes for this in NoLagg before.
http:forums.bukkit.org/threads/chunk-unloading-problem-in-craftbukkit.99341/
EDIT
Ok, fixed it on my side. Didn't clear the sent chunks when the player changed worlds. After adding it, no more missing chunk at [0, 0] in the nether. I'll have to look at the ghost items, though.
-
View User Profile
-
Send Message
Posted Oct 4, 2012@TheMimey Since you had saving disabled, I can not really tell what is causing that to happen. Nothing else in NoLagg deals with region file saving let alone closing the streams, so I honestly do not know what causes it. I verified that the chunks' component dummy world is no longer exposed and can not be a cause here. Maybe I can come up with something, but nothing I see right now...
@Kartus
I looked it up, but there is no way NoLagg can interfere in that process. Can you pastebin the entire list of plugins running on the server? I suspect one of them is using the 'netserverhandler replacement' logic, which turned out NPEing on a getter.
@TheMimey It worked fine thus far, I added a creeper limit of 5 and I never saw more than 5 creepers in the world. Did you add all the needed 'force removed' entities too? Those Nolagg is allowed to remove from loaded chunks. For the error I need the full error.
@ZeEye I couldn't reproduce the item ghosting bug locally, and since people that have this had all item-related components in NoLagg disabled, I am clueless. I suspected the item stacker, but people that have that disabled have the same problems...so it has to be another plugin. Someone suggested Essentials to be the blame, but I'm not entirely sure about that.
The nether portal bug needs some looking over still. I wanted to push out 1.88.6 because 1.88.5 was a bit unstable.
-
View User Profile
-
Send Message
Posted Oct 4, 2012[SEVERE] Could not pass event EntityExplodeEvent to NoLagg 03:19:54 PM CONSOLE: [SEVERE] Could not pass event EntityExplodeEvent to NoLagg
-
View User Profile
-
Send Message
Posted Oct 4, 2012Nolaggs mob limiter is stil not working
-
View User Profile
-
Send Message
Posted Oct 4, 2012Hi,
nice work on the new version. Any update on the item ghosting and nether portal bugs if I may ask?
greets ZeEye
-
View User Profile
-
Send Message
Posted Oct 4, 2012Player's can't connect my server, when NoLagg is active. 1.3.2 R1.0 and newest NoLagg + BKCommonlib. Error when connecting player's: http://pastebin.com/D35Q0kze
-
View User Profile
-
Send Message
Posted Oct 3, 2012Hurray, THX!
-
View User Profile
-
Send Message
Posted Oct 3, 2012Also does nolaggs mob spawner work agaiN?
-
View User Profile
-
Send Message
Posted Oct 3, 2012Latest nolagg errors:
Randomly:
http://pastebin.com/YavaEXL0
-
View User Profile
-
Send Message
Posted Oct 3, 2012@bergerkiller
I have updated my bk and nolagg, if the thread locks up again how can i fix this. I have disabled saving and the spawn limiter
-
View User Profile
-
Send Message
Posted Oct 3, 2012Ok v1.88.6 is now up officially:
http:dev.bukkit.org/server-mods/nolagg/files/122-v1-88-6/
Note that you need BKCommonLib v1.30 (which I just uploaded today, too)
-
View User Profile
-
Send Message
Posted Oct 3, 2012@michaelhampton Hmmm the chunks component does create a dummy world which it then removes from the server again. I'll check the code and do some measurements to see if this is not flawed.
EDIT
Wow damn this is actually the cause. Someone had an issue before where getUUID() of a world returned null. Now I know what caused that to happen...that dummy world. I'll be at it and fix it immediately.
-
View User Profile
-
Send Message
Posted Oct 3, 2012@TheMimey
well yeah. thats not the crash report. Thats just your server log.
your crash reports are on your server. In the maindirectory there should be a folder called "crash-reports"
And i think your BKCommonLib is outdated. I already told you to upload it i know but I'm not sure if you read it.
-
View User Profile
-
Send Message
Posted Oct 3, 2012@bergerkiller
I downloaded this yesterday and loved how it smoothed ot everything. it made it possible to use world edit for bigger projects... unfortuneately i have it disabled now for one reason. when i looked at my multiverst world list, it removed all my other worlds other then nether, end, and overworld. vanilla worlds... is there anyway to have this and keep the worlds it removes? or multiverse compatibility? or multiworld supportor? something? it would be nice cuz i know this plug is the issue cuz when i disabled it and only it the worlds came back. i tried importing them with the plug enabled but no. any help at all? maybe i'm doing something wrong.
-
View User Profile
-
Send Message
Posted Oct 3, 2012@Jokaru
Have you ever bothered to open up config.yml? Really? No, just really? I think it is you that is uninformed. Everything can be disabled. Everything can be configured. You blame things on Nolagg that it does not cause, and I see this often. Look, if you believe that component x doesn't work, disable it. No one is forcing you to use everything.
Seriously, you are complaining about things that are completely irrelevant. You want the TNT option? Please, go disable all other components and only enable the TNT option. No incompatibilities, no 'resource using', no nothing.
Finally, why do you bring up problems in other plugins?
Final finally, I'll add a configurable option to enable or disable the cross-thread access. One thing less to complain about.
EDIT2
And test version 3 (below) has this right now. I updated the download.
-
View User Profile
-
Send Message
Posted Oct 3, 2012@bergerkiller I want use your plugin many times but i always can't do this because i need much more other plugins, my server is stable anyway but i need option "TnT reaction per second" and i never see that, supposably, Ore to client obfuscator crush my server, or Fire lords crash or cause lags or spam errors in my console. When i use NoLagg i forced to use more resource-intensive plugins like other obfuscator that eat 50 or more percent of my resources. NoLagg help?! NO! This is only stubborn author that don't want to add disable option to his plugin becase he wants to change all bukkit system, this is so silly. So every time i want to use your plugin but i remove his and instal Ptweaks, maybe not so powerfull but without uselles, laggy and bugy option.
-
View User Profile
-
Send Message
Posted Oct 3, 2012@bergerkiller Here is test version #3. I fixed the thread locker to allow the actual message to be displayed so I can see what is causing lag on your server.
@TheMimey https:dl.dropbox.com/u/3681706/NoLagg%20v1.88.6%20test3.zip
This probably doesn't fix the problem, but will at least shed some light on what is happening. Then I can see what I (or you?) have to fix to prevent this lag. Thread locking can be caused by any plugin, so I can't tell without a stack trace.
-
View User Profile
-
Send Message
Posted Oct 3, 2012@Jokaru It's not at all an useless option, unless you want the server to randomly crash and cause entire worlds to be corrupted, that is. And that warning system does nothing to the plugins. Interfere? WHAT? It reports the problem, ONCE, and doesn't do anything to stop it. Any bugs that follow are caused by that plugin, not by NoLagg. People should start understanding what the phrase 'don't shoot the messenger' means.
@TheMimey Seriously...stop spamming. The more you post the less chance you get for getting attention. I am a human being and can not fix something the second you post, I am not online all the time either. Now I AM online and I am going to look at the tick lag (evidently, you have a thread lock notification) you are having. First off, I have to re-upload a new test version, because the thread lock notifier fails to generate a report when there is a plugin without a package...which caused that error in the end. I fixed that now, and I am re-uploading it.
But before I do that I am going to do some local checks to see if there are no obvious problems in NoLagg that could cause that. For now, it looks like that lag problem is caused by another plugin, but I can't be too sure. Beforehand, check if disabling the 'saving' component helps out.
-
View User Profile
-
Send Message
Posted Oct 3, 2012Same here, after updating to recommended bukkit build, nolagg was causing server freezes, but no crashes. Removed it, everything runs smooth.