Saturday, October 22, 2011

Could not invoke operation 'Enqueue' against the 'AQ Adapter' due to ORABPEL-11905 Fault happened Error while obtaining handle to JDBC connection Could not invoke operation 'Enqueue' against the 'AQ Adapter' due to ORABPEL-11905 Fault happened:

Visit the Below Website to access unlimited exam questions for all IT vendors and Get Oracle Certifications for FREE
http://www.free-online-exams.com

Problem:    Could not invoke operation 'Enqueue' against the 'AQ Adapter' due to ORABPEL-11905 Fault happened
Error while obtaining handle to JDBC connection
Could not invoke operation 'Enqueue' against the 'AQ Adapter' due to ORABPEL-11905 Fault happened: 

Solution:


See these docs for managing connection pools and settings for resource adapters:

Oracle® Containers for J2EE Deployment Guide
10g (10.1.3.1.0)
Part Number B28951-01

Section Setting Resource Adapter Properties

At this link: http://download.oracle.com/docs/cd/B31017_01/web.1013/b28951/deployplan.htm#CHDIJHIJ

Of interest here (among other things):

scheme: Defines how OC4J handles connection requests after the maximum permitted number of connections is reached. One of the following values must be
specified:

* dynamic: OC4J creates a new connection and returns it to the application, even if this violates the maximum limit. When these limit-violating connections are closed, they are destroyed instead of being returned to the connection pool.
* fixed: OC4J raises an exception when the application requests a
connection and the maximum limit has been reached.
* fixed_wait: OC4J blocks the application's connection request until an in-use connection is returned to the pool. If waitTimeout is specified, OC4J throws an exception if no connection becomes available within the specified time limit.


Oracle® Containers for J2EE Resource Adapter Administrator's Guide
10g (10.1.3.1.0)
Part Number B28956-01

Section Pooling Scheme, Minimum and Maximum Connections, Initial Capacity

At link: http://download.oracle.com/docs/cd/B31017_01/web.1013/b28956/conncont.htm#sthref111


Tuning JCA Connection Cache

The JCA WSIF Provider supports a JCA Connection Cache, which resides in the JCA WSIFPort implementation class.

Normally the JCA Connection Cache (Pool) is boundless, but it can be capped (through a partnerlink property). If for example the max size is 10, and 15 concurrent threads are trying to invoke the same endpoint, 5 of them will throw a (retryable) remote fault. This Connection pool ensures single threading through JCA LocalTransactions.

For BPEL these properties are configured in bpel.xml. For ESB, they are configured in the .esbsvc file as Endpoint Properties, normally set via the ESB Console.



<property name="useJCAConnectionPool">true</property>

Normally this property is derived from the declared transactional support of the adapter (e.g. the File adapter does not this connection pool since it is multi thread safe),
but that can be overridden thru this property.

<property name="maxSizeJCAConnectionPool">500</property>

If this is not specified, <unbounded> is assumed. Applies on a per WSIFPort (partnerlink) basis.

<property name="lruConnectionMaxIdleAge">50000</property>

Maximum age of idle connections in the pool - important since some type of connections hold on to expensive external resources (e.g. DB shadow processes). Measured in ms.

<property name="lruConnectionCheckInterval">10000</property>

How often to perform the idle connection scan (measured in ms).



To entirely disable the JCA Connection Cache/Pool, you can configure the following Endpoint Property:

<property name="cacheConnections">false</property>

This will make the Adapter Framework acquire and release CCI connections for each adapter Interaction (invocation)


Also can you please check with using private connection pooling in oc4j-ra.xml 

I am just giving an example

<connection-pooling use="private">
<property name="waitTimeout" value="180" />
<property name="scheme" value="dynamic" />
<property name="maxConnections" value="10" />
<property name="property-check-interval" value="5" />
<property name="inactivity-timeout-check" value="all" />
<property name="minConnections" value="0" />
<property name="abandoned-connection-timeout" value="20" />
<property name="inactivity-timeout" value="30" />
</connection-pooling>


===========================================



References:

BUG:7573142 CONNECTION POOL USING JMS ADAPTER TO AQ FROM BPEL SENSOR DOESNT FREE CONNECTIONS

BUG:6333729 AQ DOESN'T ENQUEUE UNDER HEAVY LOAD

docs for managing connection pools and settings for resource adapters:

Oracle® Containers for J2EE Deployment Guide
10g (10.1.3.1.0)
Part Number B28951-01

Section Setting Resource Adapter Properties

At this link: http://download.oracle.com/docs/cd/B31017_01/web.1013/b28951/deployplan.htm#CHDIJHIJ


Get Oracle Certifications for all Exams
Free Online Exams.com

No comments: