Description of problem: Customers have been experiencing jBPM deadlocks. Please see https://bugzilla.redhat.com/show_bug.cgi?id=802756. Suggested fix for that issue is the following configuration of the jBPM datasource. - Add <new-connection-sql>SET TRANSACTION ISOLATION LEVEL SNAPSHOT;</new-connection-sql> to jbpm.esb/jbpm-ds.xml <datasources> <local-tx-datasource> <jndi-name>JbpmDS</jndi-name> <connection-url>jdbc:sqlserver://xxxx.redhat.com:1433;DatabaseName=yourdatabase</connection-url> <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class> <user-name>xxxx</user-name> <password>xxxx</password> <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation> <new-connection-sql>SET TRANSACTION ISOLATION LEVEL SNAPSHOT;</new-connection-sql> <min-pool-size>15</min-pool-size> <max-pool-size>50</max-pool-size> <metadata> <type-mapping>MS SQLSERVER2000</type-mapping> </metadata> </local-tx-datasource> </datasources>
Resolved with revision 11565 of: soa-p/src/main/resources/soa-p/schema-tool/mssql2008/template/mssql-ds.xml Commit message: BZ-862306 Add "SET TRANSACTION ISOLATION LEVEL SNAPSHOT" to fix jBPM deadlocks on SQL Server.
Verified on 5.3.1.ER1.