Configure transaction properties for an application server

Configuring transaction properties for an application server

Use this task to change the transaction log properties, to move your transaction logs to a new location, or to update the parameters for the server's transaction logs.

Why and when to perform this task

You might want to move to your logs to a different storage device. Perform this task when you are ready to move your transaction logs or when you need to make a change to the parameters. You must restart the application server to make configuration changes take effect.

To configure the transaction properties for an application server, complete the following steps:

  1. Start the administrative console.

  2. In the navigation pane, select Servers-> Manage Application Servers-> your_app_server This displays the properties of the application server, your_app_server, in the content pane.

  3. Under Container Settings, expand Container Services, then click Transaction Service to display the properties page for the transaction service, as two notebook pages:

    Configuration

    The values of properties defined in the configuration file. If you change these properties, the new values are applied when the application server next starts.

    Runtime

    The runtime values of properties. If you change these properties, the new values are applied immediately, but are overwritten with the Configuration values when the application server next starts.

  4. To review transaction-related configuration properties, ensure that the Configuration page is displayed.

  5. Optional: If you want to change the directory in which transaction logs are written, type the full pathname of the directory in the Transaction log directory field. You can check the current runtime value of Transaction log directory , by clicking the Runtime tab.

    When using WebSphere Application Server without High Availability support, you can leave the recovery log configuration for persistent services (such as the transactions service) unset. The application server assumes a default location within the appropriate profile directory. When High Availability support is enabled, this default may not be visible from all servers in the cluster (for example, if they are in different profiles or physical nodes.) As a result, it is recommended that the recovery log location be configured for each server in the cluster before enabling High Availability.

    You can also specify a size for the transaction logs, as described in the following step.

    Note: If you change the transaction log directory, you should apply the change and restart the application server as soon as possible, to minimize the risk of problems occurring before the application server is restarted. For example, if a problem causes the server to fail (with in-flight transactions), the server next starts with the new log directory and is unable to automatically resolve in-flight transactions that were recorded in the old log directory.

  6. Optional: If you want to change the default file size of transaction log files, modify the Transaction log directory field to include a file size setting, in the following format:
    directory_name;file_size
    Where

    • directory_name is the name of the transaction log directory

    • file_size is the new default size specified in bytes. The n K or nM suffix can be used to indicate kilobytes or megabytes. If you do not specify a file size value, the default value of 1M is used.

    For example (Windows systems), c:\tranlogs;2M indicates the files are to be created with 2M bytes size and stored in the directory c:\tranlogs.

    In a non-production environment, you can use the transaction log directory value of ;0 to disable transaction logging. (There must be no directory name element before the size element of 0.) You should not disable transaction logging in a production environment, because this prevents recovery after a system failure, and therefore, data integrity cannot be guaranteed.

  7. Optional: Review or change the value of transaction timeout properties:

    Total transaction lifetime timeout

    Type the number of seconds a transaction can remain inactive before it is ended by the transaction service. A value of 0 (zero) indicates that there is no timeout limit.

    Client inactivity timeout

    Type the number of seconds after which a client is considered inactive and the transaction service ends any transactions associated with that client. A value of 0 (zero) indicates that there is no timeout limit.

  8. Optional: Review or change heuristic-related properties:

    Heuristic retry limit

    The number of times that the application server retries a completion signal, such as commit or rollback, after a transient exception from a resource manager or remote partner.

    Heuristic retry wait

    The number of seconds that the application server waits before retrying a completion signal, such as commit or rollback, after a transient exception from a resource manager or remote partner.

    Enable logging for heuristic reporting

    Select this property to enable the application server to log "about to commit one-phase resource" events from transactions that involve a one-phase commit resource and two-phase commit resources.

    Heuristic completion direction

    Select the direction used to complete a transaction that has a heuristic outcome; either the application server commits or rolls back the transaction, or depends on manual completion by the administrator.

  9. Review or change other configuration properties, to suit your requirements. For more information about the properties of the transaction service, see Transaction service settings.

  10. Click OK and save.

  11. Stop then restart the application server.

    If you change the transaction log directory configuration property to an incorrect directory name, the application server will restart but be unable to open the transaction logs. You should change the configuration property to a valid directory name, then restart the application server.

    If you are running the application server as non-root, modify the permissions on the new transaction log location. If you want to use peer recovery of transactions on a shared device with non-root users, make sure that your non-root users and groups have matching identification numbers across machines




Sub-topics
Transaction service settings

Related tasks
Using transactions with WebSphere applications