You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mr...@apache.org on 2008/10/29 18:15:00 UTC

svn commit: r708944 - /ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java

Author: mriou
Date: Wed Oct 29 10:14:59 2008
New Revision: 708944

URL: http://svn.apache.org/viewvc?rev=708944&view=rev
Log:
Possible deadlock due to a thread holding a write lock that requests a thread from a pool that could be exhausted by readers.

Modified:
    ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java

Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java?rev=708944&r1=708943&r2=708944&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java Wed Oct 29 10:14:59 2008
@@ -859,12 +859,12 @@
             } else {
                 // If we do not have a transaction we need to create one. 
                 try {
-                    _engine._contexts.scheduler.execIsolatedTransaction(new Callable<Object>() {
+                    _engine._contexts.scheduler.execTransaction(new Callable<Object>() {
                         public Object call() throws Exception {
                             bounceProcessDAO(_engine._contexts.dao.getConnection(), _pid, _pconf.getVersion(), _oprocess);
                             return null;
                         }
-                    }).get(); // needs to be synchronous
+                    });
                 } catch (Exception ex) {
                     String errmsg = "DbError";
                     __log.error(errmsg, ex);