What's new in Oracle SOA Suite 11g R1 PS6?


Oracle has released a new version for their Oracle Fusion Middleware product line. This version includes Patch Set #6 (PS6) for Oracle SOA Suite 11g R1, with a big list of improvements and fixes for each component in that suite.
In this post we will highlight some of the interesting updates with regards to troubleshooting, performance, reliability and scalability.

Infrastructure / Purging scripts

Database growth is a common problem for large-scale Oracle SOA Suite deployments. Oracle already provides multiple purging strategies for the SOA Suite runtime database. This patch set includes two new scripts for purging most of the runtime data:
  • Table Recreation Script (TRS): This script can be used to reclaim as much database space as possible, while still retaining the open instances. It can be used as a corrective action for databases that grew excessively, for example when purging was not performed at all. This should be used as a single corrective action only; the script does not replace the normal purging scripts
  • Truncate script: Remove all records from the SOA Suite runtime tables without dropping the tables. This script can be used for cloning SOA Suite environments without copying the instance data, or for recreating test scenarios by cleaning all the runtime data.
The Oracle SOA Suite Administrator's guide contains a table with the available purging strategies.

Diagnostic dumps

Using WLST you could already dump diagnostic information about various components of the SOA Suite. This version adds support to retrieve more information on BPEL and Adapters from the command-line.

Diagnostic dumps for BPEL

New diagnostic dumps are available for BPEL to get information on thread pools, average processing time for BPEL components, and average waiting times for asynchronous instances. This information can be very useful for performance analysis or troubleshooting. With WLST this information can be retrieved from the command-line and included for monitoring or reporting.
A sample of the output for the invoke queue of the BPEL dispatcher:
Invoke Queue :
       Total Processed Messages       :714
       Total Errored Messages         :0
       Average Message Pending Time   :1385.2
       Average Message Execution Time :954.33

Diagnostic dumps for Adapters

Diagnostic dumps are now available for deployed adapters and connection pools for those adapters. For example, the following connection pool information can be dumped for the FileAdapter:
FreeConnectionsCurrentCount = 10
NumUnavailableCurrentCount = 0
NumberDetectedLeaks = 0
ConnectionsDestroyedByErrorTotalCount = 0
ConnectionsRejectedTotalCount = 0
More information on new diagnostic dumps in SOA Suite 11g PS6, see the Oracle blog post.

Oracle Service Bus

This Patch Set offers new sticky load-balancing features for HTTP, as well as XA support for MQ connections.

HTTP Sticky Load Balancing

When creating HTTP Business services, there is a new option to configure "Session Stickiness". This is useful for HTTP Business Services with multiple endpoints. The initial request will use the load-balancing algorithm configured, but the subsequent requests with the same session ID will go to the same endpoint that processed the initial request (instead of using the load-balancing algorithm).
The stickiness settings can be found in the Advanced Settings of the HTTP Transport configuration page of a Business Service:

MQ XA support and timeout settings

This patch set adds new options for MQ Connection Resources to enable XA transaction support, as well as a new option to define the transaction timeout in MQ Proxy Services when XA is enabled. Using these options, the MQ resources can now participate in global transactions, similar to the JMS resources in OSB.

More information

For a high-level overview of all the updates in SOA Suite 11g PS6, see the blog post by Jürgen Kress.