# Connection Pools and XA-compliant Database Drivers

The WebLogic Workshop runtime uses a database connection pool called cgPool to store application state and other information about running WebLogic Workshop applications. Interactions with the database are transacted as described in Default Transactional Behavior in WebLogic Workshop. If you create additional connection pools that are used in your application, you may unintentionally introduce a requirement for XA-compliant database drivers.

XA-compliant database drivers are special drivers used to coordinate transactions across multiple databases, enabling coordinated two-phase commit. Many WebLogic Integration applications require this capability. but most non-WebLogic Integration Workshop applications do not. XA-compliant drivers add overhead and should not be used unless distributed coordinated transactions are absolutely required by the application.

If you create additional connection pools in addition to the cgPool connection pool already used by WebLogic Workshop, and the additional connection pools are involved in the same transactions as cgPool, you will have implicitly added a requirement that XA-compliant database drivers be used.

In order to avoid this, if possible, you should configure your application such that the same connection pool is shared by WebLogic Workshop and other application components. You can do this in one of the following ways:

1. You can modify the cgPool connection pool to use the same database as the other application components.
2. The WebLogic Workshop runtime uses the cgDataSource data source to access the cgPool connection pool. If you have created a new connection pool, you can modify the cgDataSource data source to use the new connection pool instead of cgPool, thus using the same database.

Once all the data sources in an application use the same connection pool, XA-compliant database drivers are not required and the application will exhibit better performance.

Related Topics

None.