### To configure how the Application Server recovers transactions

Transactions might be incomplete either because the server crashed or a resource manager crashed. It is essential to complete these stranded transactions and recover from the failures. Application Server is designed to recover from these failures and complete the transactions upon server startup.

While performing the recovery, if some of the resources are unreachable the server restart may be delayed as it tries to recover the transactions.

When the transaction spans across servers, the server that started the transaction can contact the other servers to get the outcome of the transactions. If the other servers are unreachable, the transaction uses the Heuristic Decision field to determine the outcome.

1. In the tree component select the Configurations node.

2. Select the instance to configure:

   - To configure a particular instance, select the instance's config node. For example, the default instance, `server`, select the `server-config` node.

   - To configure the default settings for all instances, select the `default-config` node.

3. Select the Transaction Service node.

4. To enable the recovery of incomplete transactions, check the Recover in the On Restart field.

5. Set the amount of time, in seconds, the Application Server tries to connect to the unreachable server in the Retry Timeout field. The default value is 10 minutes (600 seconds).

6. Set the policy for unreachable servers in a transaction in the Heuristic Decision field.

   Unless there is a good reason to set this field to Commit, leave Heuristic Decision set to Rollback. Committing indeterminate transactions can compromise the data integrity of your application.

7. Click Save.

8. Restart the Application Server.