Transactions!
Implementing transactions are tricky. It appears to be simple; but if you miss even a small thing; consequences can be REALLY bad. One such thing identified last night; in a system my team delivered few months back. Luckily; the loop hole was traced as someone wished all the golden eggs in a single go!
I mentioned earlier about System.Transaction, which is a new namespace and one should use it if he is working with .NET v2. With this new namespace; things are pretty straight forward and simple. Read Sahil Malik’s article on CodeGuru if you want to have your own resource manager to extend the concept of transactions beyond databases.
I really had a bad weekend; involved lot of traveling; late working hours and very less sleep. Tomorrow we have plans to eat something from the guy as penalty who wrote that piece of code.