6.2. Configuring the Transaction Manager
Overview
You can configure some basic parameters of the Aries transaction manager by editing the properties in the Aries transaction manager configuration file. In particular you must always specify the location of the HOWL log file directory and it is necessary to set the
aries.transaction.recoverable
property explicitly to true
, if you want to enable the transaction recovery mechanism.
Configuration file
To configure the Aries transaction manager, you can edit the properties in the following configuration file:
EsbInstallDir/etc/org.apache.aries.transaction.cfg
Transaction manager properties
The properties that you can set in the
org.apache.aries.transaction.cfg
file include the following:
- aries.transaction.recoverable
- A boolean variable that specifies whether or not the transaction manager is recoverable. If not set, it defaults to
false
. - aries.transaction.timeout
- Specifies the transaction timeout in seconds. Default is 600 (that is, 10 minutes).
- aries.transaction.tmid
- Specifies the transaction manager identification string that gets appended to all transaction XIDs. This identification string allows transactions from different transaction managers to be disambiguated during transaction recovery, and should be different for each JBoss Fuse container that performs global transactions on a particular set of transactional resources. The string can be up to 64 characters in length. If not specified, a default identification string would be used, but this default value is the same for all JBoss Fuse containers.
- aries.transaction.howl.bufferSize
- Specifies the HOWL log buffer size in units of KB, where the value must be an integer in the range
[1,32]
. Default is4
.NoteLarger buffers may provide improved performance for applications with transaction rates that exceed 5K transactions per second and a large number of threads. - aries.transaction.howl.logFileDir
- (Required) Specifies the log directory location, which must be an absolute path. No default value.
- aries.transaction.howl.logFileName
- Specifies the name of the HOWL log file. Default is
transaction
. - aries.transaction.howl.logFileExt
- Specifies the file extention for the HOWL log file. Default is
log
. - aries.transaction.howl.maxLogFiles
- Specifies the maximum number of log files. Default is 2.
- aries.transaction.howl.maxBlocksPerFile
- Specifies the maximum size of a transaction log file in blocks (the block size can vary, but in Linux systems a typical block size is 4kB). After the maximum size is reached, the log rolls over to a new log file.
Sample settings
The following example shows the default settings from the
org.apache.aries.transaction.cfg
configuration file:
aries.transaction.timeout=600 aries.transaction.howl.logFileDir=${karaf.data}/txlog/