[z/OS]

Updating resources for an application server

Properly updating resources ensures that all transactional work completes while the original versions of the resources are still available. If resources are not properly updated, data builds up in the transaction partner log. Eventually high CPU usage is observed in the controller.

Before you begin

Before you start to update a resource, verify that all of the transactions being handled by that resource have completed..

About this task

In severe cases, when high CPU usage occurs in the controller because resources are improperly updated, the partner logs becomes full, and the application server becomes unusable. When the partner logs become full, the following error message appears in the servant log:

BBOO0220E: WTRN0000E: An internal error occurred in method logData in class com.ibm.ws.Transaction.JTA.PartnerLog

If before updating a resource, you ensure that there is no work pending that involves this resource, data will not build up in the transaction partner log. However, data accumulates in the transaction partner logs if there is a change in resource, there is a change in the configuration for a resource, or a resource is deleted, before all of the transactional work that the resource is handling completes. This situation occurs because after the resource update occurs, the old version of the resource is no longer available for recovery when the server is restarted.

If the recovery process does not completes when you restart the server, periodically, the product attempts to recover those transactions. To determine if there are transactions that have pending resolutions, look for the following message in the controller log:

BBOT0009I: TRANSACTION SERVICE RESTART UR STATUS COUNTS FOR SERVER {0}: IN-BACKOUT={1}, IN-DOUBT={2}, IN-COMMIT={3}

Procedure

  1. Make sure the resources you want to change are available.
  2. Stop the application server.
  3. Restart the server in recovery mode

    Restarting the server in recovery mode ensures all transactions are resolved, and the transaction partner logs are clean for next server restart. The server automatically shuts down after the recovery process completes.

    See the topic Restarting an application server in recovery mode for a description of how to perform this step.

    If the server you started in recovery mode does not shutdown after a reasonable amount of time, you might already have old resource entries in the partner logs that cannot be recovered. You should contact IBM Support for assistance in determining the issue, and the proper course of action.

  4. Start the administrative console to make your resource configuration changes.

    You need to use the administrative console to make the resources changes.

    In a stand-alone environment, you must start the single server that is defined for this environment before you can access the administrative console and make the changes to the resources. However after you start this server, you must ensure that no one attempts to use any of the resources you are changing. If that resource is accessed even once, the resource is be put into the recovery log, and any recovery attempt the next time the server starts will fail if the resource cannot be reached.

    In a Network Deployment environment, you can start any of the application servers except the application server that uses the resources you are changing.

  5. Make your resources changes to the server configuration
  6. Save and synchronize your changes.
  7. If you are running in a Network Deployment environment, start the application server that uses the resources you changed.

Results

The application server is now using the changed resources with no impact to the transaction partner logs.