E2 is a weird beast. Sometimes EDB gets restless and starts tearing things apart. Sometimes something gets nuked by mistake. Sometimes E2 has a mind of its own. All of these things can lead to disaster.

Thats why, once per day, we cage up EDB and tell E2 to make a copy of itself for posterity. So if you see E2 complaining about not being able to call 'execute' on an undefined object in NodeBase.pm... a backup is probably taking place.

As for how the backup is done, thats simple. Everything (no pun intended) is stored in a database. Once per day, we dump the entire contents of the database to a file, gzip it and upload it to another server that keeps our backups. The reason why you sometimes get an error when we are backing up the database is because the database is at full throttle doing the dump. This can cause our webserver to lose its database connection, which in turn, gives the error that you see.