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.

Note

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

use-jdbc-store

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

jdbc-store-datasource

The JNDI name of the JDBC datasource used for storage.

jdbc-action-store-drop-table

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

jdbc-action-store-table-prefix

The prefix for the action store table names. Optional.

jdbc-communication-store-drop-table

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

jdbc-communication-store-table-prefix

The prefix for the communication store table names. Optional.

jdbc-state-store-drop-table

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

jdbc-state-store-table-prefix

The prefix for the state store table names. Optional.