[jbpm-commits] JBoss JBPM SVN: r2404 - jbpm3/branches/aguizar/modules/core/src/main/java/org/jbpm/db.
do-not-reply at jboss.org
do-not-reply at jboss.org
Sat Sep 27 00:36:31 EDT 2008
Author: alex.guizar at jboss.com
Date: 2008-09-27 00:36:31 -0400 (Sat, 27 Sep 2008)
New Revision: 2404
Modified:
jbpm3/branches/aguizar/modules/core/src/main/java/org/jbpm/db/JobSession.java
Log:
check the effect of pessimistic locking on job acquisition and execution
Modified: jbpm3/branches/aguizar/modules/core/src/main/java/org/jbpm/db/JobSession.java
===================================================================
--- jbpm3/branches/aguizar/modules/core/src/main/java/org/jbpm/db/JobSession.java 2008-09-26 17:41:47 UTC (rev 2403)
+++ jbpm3/branches/aguizar/modules/core/src/main/java/org/jbpm/db/JobSession.java 2008-09-27 04:36:31 UTC (rev 2404)
@@ -6,6 +6,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.hibernate.LockMode;
import org.hibernate.Query;
import org.hibernate.Session;
import org.jbpm.JbpmContext;
@@ -32,6 +33,7 @@
query.setString("lockOwner", lockOwner);
query.setTimestamp("now", new Date());
query.setMaxResults(1);
+ query.setLockMode("job", LockMode.UPGRADE);
job = (Job) query.uniqueResult();
} catch (Exception e) {
@@ -48,6 +50,7 @@
query.setString("lockOwner", lockOwner);
query.setTimestamp("now", new Date());
query.setParameter("processInstance", processInstance);
+ query.setLockMode("job", LockMode.UPGRADE);
jobs = query.list();
} catch (Exception e) {
@@ -101,7 +104,7 @@
public Job loadJob(long jobId) {
try {
- return (Job) session.load(Job.class, new Long(jobId));
+ return (Job) session.load(Job.class, new Long(jobId), LockMode.UPGRADE);
} catch (Exception e) {
log.error(e);
throw new JbpmException("couldn't load job '"+jobId+"'", e);
More information about the jbpm-commits
mailing list