MRT Today

From Minecart Rapid Transit Wiki
Jump to navigation Jump to search
MRT Today
MRT Today.png
Everything you need to know
Information
FounderCortesi
FoundedJune 15, 2018
StaffCortesi

MRT Today is a news source published in Airchester. It's main focus is to answer user's questions regarding popular news on the MRT server.

News

Template


Template


Template


Template


Template


Articles

CoreProtect, what you need to know

15th June 2018

Today the server returned online after 3 days of inactivity, and everything was due to a plugin called "CoreProtect". But lets have a closer look at the plugin and the reason it failed.

CoreProtect was the first-used plugin in terms of block-data, edit and storage system. It's developer describes the plugin as " a fast, efficient, data logging and anti-griefing tool that has the ablity to rollback and restore any amount of damage. Designed with large servers in mind, it will record and manage data without impacting your server performance." Well... too bad for the last part, because in January 2014 the plugin was switched with PRISM, another data logging plugin but, as it's predecessor, the plugin had some major flaws forcing the owner, Frumple, to revert back to the CoreProtect plugin in April 2014. Frumple, on this day, wrote: "CoreProtect doesn’t automatically purge its data on a regular basis. Therefore in the future, we will need to whitelist the server and run these purges again every few months. We will inform you as to when the next “purge” day will occur." Frumple stated that we have had purges during the Gamma days.

So, what happened?
Everytime you destroy, place or edit a block the CoreProtect plugin registeres that action and gives it an ID. This ID is just the code that is associated with your edit, so if an admin is forced to roll-back, he will go and find this ID, which is saved in a datbase called "PostgreSQL" which is an object-relational database management system. Like with a phone, if you keed putting data in it you'll arrive to a point where the phone memory is full. Well, that's exactly what happened on our end; our database for edits was full. So, CoreProtect found itself in front of a brick wall, and couldn't save edits and block changes anymore. Just so you know, on our server we have int32 technology, meaning that from 2016 until today we did over 2,147,483,647 edits, as Cynra_ stated.

What was Frumple doing?
Frumple was trying to convert all of these "ints" to "bigints", allowing the CoreProtect plugin to continue to keep track of edits, without the need of a purge. Unfortunately, after nearly 60h of downtime, the issue was not fixed, or better, it was partially fixed. The plugin did keep track of block changes but the rollbacks where not working, as Frumple stated in discord.

And now what?
The entire CoreProtect database from April 2016 until now has been permanently deleted, meaning all block changes in this time period are currently lost. After this drastic fix the plugin is now back working as it should be. Frumple stated in discord: "we will need to make sure to purge old records from the CoreProtect database periodically, probably at least once a year". The purge is expected to last at least a day, but there is no official statement about that, nor when it will happen first.