TNT (Or, why our maps keep on corrupting)

Prior to reading, a guide:
a) This section has been verified by multiple reports on Mojang's Getsatisfaction. It's probably less wrong than the rest.
b) This section has been verified by yours truly via experimentation on a test server.

Due to extensive research on a test server, with the help of the trusted Low Orbit Ion Cannon, of the Cuboid plugin and of the Mojang's Getsatisfaction site, i've come to understand the reason of our corruption of our old maps, and hopefully to avoid its reiteration.

In the past and present, many a map were corrupted by an unknown reason. Often, the corrupted chunks made people crash, now (with the later Alpha releases and Beta) this is normally no more the case.

1) The chunk gets instead erased from the map and replaced with a fresh new one, causing weird cliffs to form, or worse, a gaping hole in the land.
2) Note well:this is NOT the case as when one goes and finds a chunk to be unloaded. That particular case is a nasty bug, but it's fixable with a simple client restart. It's also fixable by using flint&steel, or pouring water on the unloaded chunk.Unloaded chunks also are not walkable nor touchable, as soon as one tries, it's stuck in an infinite falling-rising loop. The Corrupted, as opposed to the Unloaded chunk is actually NOT THERE, and is effectively an huge death pit.

A corrupted chunk was believed to be caused by TNT, due to some undiscovered misterious bug. This is not the case, or rather, the cause is more subtle.
3) Corruption occurs when the server crashes. When a server is stopped normally, edited chunks gets saved to disk fully; In a crash, this does not occur, and thus only partial data is written to disk. The resulting chunk is a chunky salsa of mishmashed data, that makes little sense.

1) Given this, why TNT causes corruption is rather simple. (Read here for the good part) The calculation for a TNT detonation is quite complicated, as physics are involved (not actually in the explosion, but rather in the fall of the TNT block). These can't be pre-calculated as a lot of variables are in play during chain reactions, and include a large degree of randomness.
This calculations are thus very resource intensive in a large TNT chain reaction, especially in RAM consumption. Imagine running a couple of copies of Crysis or even more copies of Half Life 2 at the same time. No, well, i am overestimating it, but you get the idea.

2)The server runs out of memory and there is the nice side effect of a crash. Coincidentally, before the crash, which area was edited mostly? That's right! The explosion area. That thus gets corrupted.

3)Note well: If during the explosion the server does NOT crash (the last big explosion on Delta was like this) the corruption will not happen. Testimony of this is the fact (the lack of server crashes) that a player situated in a zone far from the explosion site was safe and did not get disconnected.

4) Client disconnections of people AT the site of the explosion are not to be taken in account in this. Those are caused by the graphics of the explosion on the client side, and are a completely unrelated phenomenon, of a simple and pretty evident nature. This has also been confirmed by my experimentation. If you want to try this at home, simply initiate an explosion (possibly via Ion Cannon, to make it easy) from very far away. You'll notice that there's much less local lag (not network lag! that's a different thing) when the explosion is far then where it is near, due to the lack of smoke rendering.

5)As you can imagine, detonating a solid shape of TNT will initiate an increasing amount of TNT on every explosion stage, while a linear shape (a long "fuse" of TNT) initiates the same amount of TNT at every stage, very stably, especially if said "fuse" is encased in a solid material (for example, you filled with TNT a 1x2 tunnel in a mountain). As it stands, a 1x2 shape of TNT in enclosed space has only around five (rough estimate) charges initiated at any given time, and is thus safe basically regardless of length (total amount of TNT used).

6)The upper limit at which our SMP server (Aelanna SMP-reg) has been tested for TNT resistance (without causing a crash) is a cube of 8x8x8 (512 total, but the shape matters more, like outlined in 5) ) blocks of TNT, detonated from the INSIDE (thus, accelerating the initiation) with 5 persons on-site and one off-site.
I ask our off-site subject (teaflower) to tell if she experienced lag or whatnot at the time. She did not complain at the time, but that's not sufficiently precise.

Last but not least: THIS is not a way to say "go ahead and asplode huge cubes of TNT, it's safe". That experiment was, while rewarding in terms of data and amusement, quite risky. Use your common sense and if you really NEED to satisfy your inner suicide bomber, ask in the channel, get assistance of competent personnel and restrict yourself to smaller amounts of explosive, if possible spread in a less compact shape to make the detonation slower and thus less resource-intensive. We also discovered that using a cube shape is brutally inefficient in terms of explosion spread and thus is quite disappointing.

7)The use of TNT cannons has been, conversely, proven safe, as the amount of TNT used is much lower than risky values (around sixty blocks for a REALLY HUGE (and almost unfeasible) cannon).

Happy safe explosions!

TL;DR:It's not TNT in itself that causes corruption. Every single crash can ruin a map (specifically the lastly edited chunks), TNT is just an initiator of crashes when it overloads the memory of the server because it's been used in extremely large amounts. Thus, we should put in place some form of protection (Probably just one hourly backup suffices) because a power outage, a rat chewing on the cables, a random server quirk, basically everything can put our maps at risk.

PS: On a side note, yarnwitch's server has had a crash due to runecraft usage (in particular, the ice boots). This could have caused corruption, but the amount of editing that was one at the time is minimal, so it's a pretty remote possibility. Please take note of this nonetheless and be aware that random chunks could go missing, or replaced with weird cliffs any time soon.

PPS: Eraiya's griefing would have made great evaluation data, but we have got no idea if 1) the server did crash or not OR 2) the shape of the charges used. If the server did crash, we're in a shitty situation because our chunks could die at every moment. Aelanna has a way to verify if the crash happened? I've yet to ascertain this.