WebSphere Application Server: -recovery flag

If you have a server that crashed without a clean shutdown, you may have transactions that are in progress and need to be recovered. In development, you would likely jusy delete the tranlog. On a production machine, you will likely need the following useful command line option when starting your server:

startServer <server> -recovery

This is the preferred way to clear any in-doubt transactions. It will start the server, allow you to recover transactions and then shut it down again. Once the in-doubt transactions are resolved, the following normal start of the server should be clean.

Author: dan


  1. Note that this really doesn’t do anything that the server doesn’t do on a normal restart. Its main use if you have some reason for wanting the server in question not to start processing new workload.

  2. Hi David,

    Yes, but it’s nice to have a way to bring a screwy server up while isolating it from new transactions. I was almost at the point of telling the admin to be ‘really quick’ on the mouse trigger to turn off the ‘front door’ ears 🙂

    Also, sometimes it’s hard to tell the ‘normal rollback’ exceptions from new business exceptions. In one case a server spent a long time down because the admin didn’t understand that rollbacks after a crash are (cough) ‘normal’.

    It would also be cool to have a -recovery -noshutdown option when you need to tweak the config of a server but want to keep the front door closed.

Leave a Reply

Your email address will not be published. Required fields are marked *