NumberOfThreads Fails in DB Adapter Polling with Distributed Polling (UPDLOCK, NOWAIT), 'MsPolling BINDING.JCA-11624'
(Doc ID 1618799.1)
Last updated on JUNE 18, 2018
Applies to:Oracle SOA Suite - Version 188.8.131.52.0 and later
Information in this document applies to any platform.
A non-XA JDBC connection to a SQL Server database has been setup using the latest version of the sqljdbc4 driver (com.microsoft.sqlserver.jdbc.SQLServerDriver).
The DB Adapter is used to poll the database using logical delete and distributed polling for a 2-node cluster environment.
During testing it has been observed that the number of threads configured in the composite's DB Adapter settings
are not properly recognized when running against SQL Server database.
As per instructions from Development, Patch 14257655 has been installed to resolve the threading issue.
After applying this patch, the behavior is changed: with numberOfThreads set to 5, these number of threads are now kicked off and one can see five running threads that read different rows. But only one of these threads is completed and the others stay in running mode and in the next run it is being fetched again. The log then shows a deadlock:
DBActivationSpec Polling Exception.
Query name: [MsPollingSelect], Descriptor name: [MsPolling.Test]. Polling the database for events failed on this iteration.
Caused by com.microsoft.sqlserver.jdbc.SQLServerException: Transaction (Process ID 75) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction..
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document