WorldGuard

WorldGuard

8M Downloads

Regions reset on crash.

LadyCailinBot opened this issue ยท 7 comments

commented

WORLDGUARD-3040 - Reported by godgodgodgo

Every time my server crashes due to unknown reasons (issue discussion here: http://www.spigotmc.org/threads/java-crash-report.16719/) my worldguard regions reset. The regions.yml files just get completely wiped.

I would appreciate it if WorldGuard could handle this better, I'm not sure why it would just wipe all my regions.

My WorldGuard region is the latest at this time which is 5.9.1-SNAPSHOT:1296-4422d53,master
I'm using Spigot build 1443

commented

Comment by sk89q

Are you modifying the server's .jar files as the server is running? That might be causing the JVM to crash. You can also try setting {{-Dsun.zip.disableMemoryMapping=true}} in your server's command line.

However, as for the issue, were you happening to be modifying regions (in-game) at the time of crash? Otherwise, the fact that it resets is very strange.

commented

Comment by godgodgodgo

Thanks, I'll try that.
I wasn't editing the server jar or the regions file at the time of the crash.

I'll try to gather more information.

commented

Comment by sk89q

What about plugins' .jars? Really any .jar that Java loads in the process of starting and running the server.

commented

Comment by wizjany

Notably, WG saves the region database each time you edit it in-game, so if it's blank after a crash it seems to imply that the crash happened while it was writing the file.

commented

Comment by godgodgodgo

Some more information on this, I wasn't modifying any plugin server Jars either.

I sent an email to Multicraft to ask them about this and got this response:
"Thank you for your inquiry. Usually the server JAR is loaded at the beginning and can then be overwritten without any issue. Plugins can of course be overwritten at any time by the user. Nothing should be cleared because of this so that would indeed have to be an issue with WorldGuard itself. "

I'll try that Java parameter by the way, thanks.

commented

Comment by fastlockel

Solution would be MySQL if performance was sustainable. Database should update ONE region (sql request) immediately and only one region

commented

Comment by sk89q

Well MySQL support was submitted in a PR and someone pulled it (when they possibly should have not). Now it'd need someone with the time to rewrite it, which is currently not me.