21.5. JDBC Object Store Support

21.5.1. JDBC Store for Transactions

Transactions can use a JDBC datasource as its object store. If the database to be used is configured for failover and recovery, this may be a better option than using disk space on an application server. The advantages must be weighed up against the fact that a raw JDBC object store is a special object store and may not perform as well as a file system or HornetQ journal object store.


A JDBC datasource used as a Transactions object store must specify jta="false" in the datasource section of the server's configuration file.

Procedure 21.4.  Enable Use of a JDBC Datasource as a Transactions Object Store

  1. Set use-jdbc-store to true.
    /subsystem=transactions:write-attribute(name=use-jdbc-store, value=true)
  2. Set jdbc-store-datasource to the JNDI name for the data source to use.
    /subsystem=transactions:write-attribute(name=jdbc-store-datasource, value=java:jboss/datasources/TransDS)
  3. Restart the JBoss EAP server for the changes to take effect.
    shutdown --restart=true
The complete set of attributes is provided below.

Table 21.5. Transactions JDBC Store Properties

Property Description


Set this to "true" to enable the JDBC store for transactions.


The JNDI name of the JDBC datasource used for storage.


Drop and recreate the action store tables at launch. Optional, defaults to "false".


The prefix for the action store table names. Optional.


Drop and recreate the communication store tables at launch. Optional, defaults to "false".


The prefix for the communication store table names. Optional.


Drop and recreate the state store tables at launch. Optional, defaults to "false".


The prefix for the state store table names. Optional.