None

Some progress but still likely to rollback

OK we now think we understand (at least to some degree) why the server is not happy with our jar file. We had included some Java 1.2 collections classes (e.g. Hashmap, Hashlist etc) which obviously were not in the 1.1 JVM. Now that the server has gone up to 1.3 our extra inclusions are no longer required. This bit I am happy with but what I still don't understand is why it should cause the production servers to crash when the dev and test servers have exactly the same setup on and run fine.

Even though I am 90% sure that removing the offending class files from the jar will solve the problem I still suspect that we will end up spending the day rolling back. I can't say that this is the wrong decision but it will definitely cause a bad week of retesting, explanations to management and other systems which are waiting for this upgrade to happen.

All this proves just how important a rollback plan is. It's the first time in my career when I have actually had to use the plan but it just emphasises that planning for the unexpected is never wasted.