- This topic has 11 replies, 2 voices, and was last updated 12 years, 4 months ago by PseudoKnight.
-
AuthorPosts
-
August 7, 2012 at 3:25 am #2286PseudoKnightMember
So I’m testing it on my computer and am reporting here and seeing if Coder or anyone else is seeing the same. Also I’d like feedback whether these issues seem acceptable enough to update tonight.
I’m getting some common server lag spikes. I can even stand in place by myself and eventually it’ll spike lag. I don’t know, once every 15 to 90 seconds the server will freeze for 3-4 seconds. Best way to test for this so you’ll notice is to run around on grass. The sound will actually stop while the server is lagging now. This seems like the biggest problem right now.
Also, I noticed mobs spawn less sometimes after a while? Not sure what this is or I’m just paying too close attention now to an issue that’s existing for a while.
Ran into a skeleton in the open that I couldn’t hit with my sword. An arrow could, though.
Lighting glitches over void are common, which is going to be an issue on alpha and custom, but I think that’s a vanilla bug.
More chunk loading issues than usual. (the see-through kind, not the missing kind)
August 7, 2012 at 5:04 am #2287PseudoKnightMemberI don’t seem to get the spike lag if I remove all plugins but Multiverse plugins. I’m going to continue testing to see which one it is. I’m pretty sure it’s craftbukkit related, but something might be triggering it.
August 7, 2012 at 5:52 am #2288PseudoKnightMemberI tracked it down to Stargate plugin. Debug messages weren’t helpful. Going to try getting a more in-sync backup of the worlds.
August 7, 2012 at 6:17 am #2289PseudoKnightMemberMore in-sync backup didn’t help.
Tried fresh config and no existing stargates — worked smoothly.
August 7, 2012 at 7:37 am #2290Coder JMemberChunk loading issues (see through) and lighting glitches over void are present in vanilla 1.3, so possibly a client issue (or new local server issue).
Mob spawning has felt low for a while now; we assumed it was by intention.
August 7, 2012 at 8:19 am #2292PseudoKnightMemberSomething to do with Stargate and the 45-second (900 tick) chunk save interval. It might be exacerbating craftbukkit chunk load/unload issues, we’re not sure.
August 7, 2012 at 4:09 pm #2294Coder JMemberNewest dev. release shows promise. I don’t see the 900 tick lag myself, but then again, dev server doesn’t have 4 worlds + nethers and a lot of gates to test with.
August 7, 2012 at 7:54 pm #2295PseudoKnightMemberThe new build 2322 doesn’t seem to fix it, though it might save just a slight bit faster. The reason this has me concerned is that anything I experience on my computer could easily be significantly amplified on a server with 20 people on it. Though on a hopeful side, our server has SSD, which I can’t say the same for my computer. I just have a fast magnetic HDD.
I figured out that stargate keeps chunks loaded for each stargate. I compared chunks loaded with and without stargate on. The difference is just above the number of stargates, which I imagine is due to some stargates overlapping chunk boundaries. I’m not sure where in the code this is happening. Maybe they all “open” at the start and then it never unloads them?
Remember how I said /save-all didn’t lag it? Well, it didn’t occur to me that this particular 45-second interval was tied to save-on/off. (Save-off was confusing in the past. At a certain point I couldn’t tell the difference between it on/off, and there was no way to return its state. There was also a bug that made the feature not work for a while.) Someone in the bug report reminded me of that. I’ve used save-off in the past. It was necessary over a year ago to reduce lag. So I tried it here and lo and behold… it stopped the lag. I’m already doing a save-all interval on our server. If I make it /save-on \ /save-all \ /save-off then it won’t lag, and it frees up the memory that save-off builds up.
I think with this new information I’m comfortable with going ahead with updating late tonight. I still think Drakia needs to look into this issue for the general public, even if it’s not his fault.
Oh, can you look at /save-on /save-off and /save-all? I’m not exactly sure what’s going on here. I’m trying to figure out what each of these actually do. worldserver.canSave makes no sense to me. Here’s a couple key sections:
https://github.com/Bukkit/CraftBukkit/blob/d787ef29f304352cfb0c464f6d95eeb3dc7ab491/src/main/java/net/minecraft/server/ConsoleCommandHandler.java#L66
https://github.com/Bukkit/CraftBukkit/blob/8cb963939fb930c7efab3fceef8e32297bbfc8a1/src/main/java/net/minecraft/server/MinecraftServer.java#L299August 7, 2012 at 11:22 pm #2304Coder JMember* Head inflates….. POP!
There’s a number of things 1.3 changed with world/chunk loading – unloading – saving – sauteing. Unfort, for working with Mojang, Bukkit devs appears to have their pants down on a few of these changes. Looking through now, but not sure what I could do to fix it even if I figured it out (supposed I could send a Push request, but I don’t kiss EvilSeth’s butt so that won’t happen… sorry, personal)
August 7, 2012 at 11:45 pm #2305PseudoKnightMemberHeh. Ya, he can be pretty arrogant. Did you know he visited the site once?
I suppose I’ll just run a script every 5-10 mins that turns /save-on, waits 5 secs, /save-all, waits 5 sec and /save-off? Not sure what would be ideal, that’s why I was asking. It could be that just running them one right after each other would work fine. I don’t even think I need to run save-all with save-on, but it’s all so unclear.
I wonder if NoLagg saving feature would help. It saves regularly into a cache and then periodically saves that to the files on another thread… or something.
Global auto-saver
Since asynchronous chunk saving is now implemented internally, it is no longer a problem to save entire worlds frequently. You can set auto-save intervals in the configuration. If used with an interval higher than 400 ticks (20 seconds) it will use a scheduled task instead of the internal saver to prevent chunks never getting saved. Another benefit is that player information is also auto-saved, preventing your players losing their inventory state.
It also adds a new interval: a world save WRITE interval. Writing is now buffered internally, but when the server crashes all this data would be gone. The saving component will ensure that world data is updated every other time. This can help prevent you losing a lot of progress in your world.
August 8, 2012 at 6:12 am #2334PseudoKnightMemberOkay, I updated the server. It seems to save smoother on there, but I still feel it. It’s just a one second hitch, I think. I’m not sure if I want to use the save-on/off or not yet, but I’m concerned with more players it’ll be an issue. And I can’t wait up all day without sleep to see. Hrm.
August 8, 2012 at 11:19 am #2337PseudoKnightMemberThe tick rate seems to degrade significantly over time. By the time it went under 8TPS I decided to restart the server and we’re back at 20 with the same players. I might have to restart regularly until this is all resolved.
-
AuthorPosts
- The forum ‘General’ is closed to new topics and replies.