Using Oracle Real Application Clusters (RAC) with WebSphere Commerce

WebSphere Commerce Version 8.0 supports Oracle RAC as the WebSphere Commerce database. Oracle RAC provides database tier workload balancing and failover features. With Oracle RAC, you can scale your database tier horizontally by using a number of computers, LPARs, or blade servers to distribute your query processing across multiple nodes.

WebSphere Commerce runtime uses JDBC data source connection pooling to connect to Oracle RAC database. You can use WebSphere Application Server pooling, which is similar to the WebSphere Commerce data source setup on single Oracle instance. The only difference is the data source URL. For information about configuring an Oracle RAC database, see Installing and configuring a new Oracle RAC database.

To take advantage of WebSphere Commerce Support for Oracle RAC, your system must meet the following conditions:
Requirement Details
WebSphere Commerce Version Version 8.0
WebSphere Application Server Version Version or later fix pack version
Oracle RAC version 12c or later
Driver Type Oracle Thin Type-4 JDBC driver
JDBC Connection Pool WebSphere Application Server Connection Pool
Number of RAC nodes 4 RAC nodes or fewer
Supported operating systems All operating systems that are supported by both WebSphere Commerce and Oracle RAC


It is important to note that some Oracle RAC technologies function with WebSphere Commerce, but are not officially supported:

Oracle OCI Type-2 JDBC driver
The Oracle OCI Type-2 JDBC driver works with WebSphere Commerce. However, use of this driver brings a number of drawbacks. It requires the installation and configuration of Oracle Client on WebSphere Commerce nodes. Performance tuning procedures become more complicated when you use this driver because you must tune the Oracle Client performance in addition to tuning WebSphere Commerce performance. For these reasons, WebSphere Commerce views Type-4 JDBC drivers as being strategic. WebSphere Commerce customers are encouraged to use the Oracle Thin Type-4 driver when you work with Oracle RAC.
Oracle Transparent Application Failover (TAF)
Oracle TAF is a technology that is designed to help applications preserve transactions if a RAC node fails. Oracle TAF requires that the application use the Oracle OCI Type-2 driver. To realize full benefits of TAF, the application must handle Oracle exceptions and use the Oracle OCI API to restart transactions from point of failure. However, the WebSphere Commerce database access code is database-neutral, which is the WebSphere Commerce strategic direction. WebSphere Commerce does not use the Oracle OCI API. Therefore, SELECT transactions cannot be restarted from point of failure when you use TAF with WebSphere Commerce. While you can configure TAF with WebSphere Commerce, TAF can provide only limited benefits if a node fails. For these reasons, TAF is not supported by WebSphere Commerce.
Oracle Implicit Connection Cache (ICC) Connection Pool
The Oracle Implicit Connection Cache connection pool can be deployed into the WebSphere Application Server and used instead of the WebSphere Application Server connection pool. This configuration is supported by the WebSphere Application Server. However, the ICC connection pool is not fully integrated with WebSphere Application Server logging and PMI infrastructure. This connection pool is also deprecated by Oracle. Therefore, Oracle ICC connection pool is not supported by WebSphere Commerce. WebSphere Commerce customers are encouraged to use the WebSphere Application Server connection pool with the Oracle Thin JDBC Type-4 driver.


A number of Oracle technologies that are sometimes used together with Oracle RAC do not work with WebSphere Commerce:

Oracle Universal Connection Pool (UCP)
Although WebSphere Application Server Version 8.5.5 supports Oracle UCP connection pool, support for using Oracle UCP with WebSphere Commerce is not available.
Oracle Fast Connection Failover (FCF)
Oracle FCF is another technology that is designed to help applications deal with node failure within the Oracle RAC cluster. Oracle ICC and UCP connection pools implement FCF. Like TAF, FCF requires the application to handle the Oracle exception. To achieve connection failover, the application must reconnect inside the catch block after it handles the exception. The WebSphere Commerce database access code is database-neutral and does not handle exceptions that are raised by FCF. Therefore, FCF cannot reconnect upon encountering an exception. For these reasons, FCF is not supported by WebSphere Commerce.