Configure a messaging engine data store to use a data source
After configuring a JDBC data source, we can configure a messaging engine data store to use the data source.
To complete this task, you must have chosen or created a bus and a messaging engine, and the messaging engine must specify data store as its message store type.
We must also have configured a data source, as described in Create the database, schema and user ID for a messaging engine.
A messaging engine uses an instance of a JDBC data source to interact with the database containing the data store for that messaging engine.
Use the WAS console to set the data store configuration parameters.
- In the navigation pane, click Service integration -> Buses -> bus_name -> [Topology] Messaging engines -> engine_name.
- Check that the Message store type is Data store.
- Click [Additional Properties] Message store. The data store configuration detail panel is displayed.
- Specify the following data store configuration details:
- Data source JNDI name
- Type the JNDI name of the data source that provides access to database that holds the data store.
- Schema name
- Type the name of the database schema containing the tables used by the data store.
General tip: The schema name is usually the same as the user ID that is declared in the authentication alias. With some databases, for example DB2 , we can provide an alternative schema name. For more information about the relationship between users and schema, refer to the documentation for the chosen RDBMS.
Informix tip: When you configure the messaging engine to use an Informix database, specify the schema name in lowercase letters.
When it is starting, a messaging engine that uses a data store checks to see if its data store exists. If the Create tables option is selected for the configuration, the messaging engine creates the tables in its chosen schema.
The Schema name field is optional. If we require a schema name, consider the following:
- The default schema name is IBMWSSIB.
- If we delete the text so that field is blank, the messaging engine takes the user id defined in the authentication alias to be the schema name.
- If we define a schema name explicitly, that schema name is used by the messaging engine.
- If there are multiple messaging engines, configure each messaging engine to use a unique schema, otherwise FFDC error messages stating that Connection cannot be provided as Datasource has been disabled! might appear. This applies to DB2 in particular.
- Authentication alias
- Select the authentication alias that enables access to the data source.
Apache Derby Tip: When creating a new Network Attached Apache Derby data store, by default you get a blank authentication alias. If we use Apache Derby in Network Attached mode with the DB2 Universal JDBC Driver (that is, you use the "JDBC provider for Derby Network Server using the (DB2) Universal JDBC Driver"), specify an authentication alias. This requirement is documented in Data source minimum required settings for Apache Derby. See also the following troubleshooting tip: User ID not supported exception when connecting to a Network Attached Apache Derby Version 10.3 database
- Create tables
- Select the check box if we want WebSphere Application Server to create the database tables automatically.
The user ID that the messaging engine uses to connect to the data source must have sufficient authority to create the database tables and indexes.
DB2 for z/OS restriction: Do not select Create tables if you are using DB2 for z/OS, otherwise an exception will be thrown when WebSphere Application Server attempts to create the tables.
- Restrict long running locks
New feature:
This parameter specifies whether the active messaging engine must retain long running locks on the SIBOWNER table in the database.newfeat Select the check box to restrict the active messaging engine from retaining long running locks on the SIBOWNER table in the database. When this option is selected, the messaging engine establishes a lock over the database only for short durations. In the event of the active messaging engine not responding to the database, the standby messaging engine will be able to take ownership of the database because the active messaging engine holds only short duration locks. This option also ensures that only one active messaging engine can access the database at a given time.
When the check box is selected and if the active messaging engine fails to communicate with the database or respond to the database, all the current transactions from the applications are ended and no new connections from the applications are allowed to the messaging engine.
- Number of tables for permanent objects
- Permanent tables contain persistent objects for the data store.
We can only increase the number of permanent tables, not decrease them.
- Number of tables for temporary objects
- Temporary tables contain nonpersistent objects that have been saved to the data store to reduce the messaging engine memory requirement.
We can only increase the number of temporary tables, not decrease them.
Related tasks
Configure a JDBC data source for a messaging engine Generating the DDL statements needed to create or alter data store tables Increasing the number of data store tables to relieve concurrency bottleneck