Sunday, October 26, 2008

There are no marbles

Recently my boss asked me how I ensured that two database servers contained the same data.

The two servers in question ran Microsoft SQL Server 2000 (don't hate me - I inheritted them) and the only replication option available was Log Shipping.

Those who have had to go through this process will know that a log either applies fully or does not. Microsoft SQL Server 2005 (and Sybase ASE 15) are more generous - they allow you to apply a previously applied log without error. Regardless, a hard error occurs if a log is applied that does not pick up where the previous log application left off.

If change # 13559 was the last change in the previously applied log, the current log better start with change # 13560, or else the system administrator is going to be alerted / woken up / distracted from drinking / stopped mid-coutis.

Unfortunately, most IT professionals have to deal with managers who have limited (putting it kindly) knowledge of software in general, let alone enterprise systems. Upon being asked about our database failover status, my description was met with the most interesting statement:

"If I want to ensure that two buckets have the same number of marbles, I need to count the number of marbles in each bucket."

The sillines of this statement is left as an exercise to the reader.

No comments: