You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Terry Mueller (JIRA)" <ji...@apache.org> on 2010/04/29 01:23:49 UTC
[jira] Updated: (ODE-817) INVOKE_CHECK jobs are not cleaned up
[ https://issues.apache.org/jira/browse/ODE-817?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Terry Mueller updated ODE-817:
------------------------------
Description:
After running the system for a while, we now have 1000's of entries in the ode_job table with type = 'INVOKE_CHECK'.
The handler of these events doesn't appear to invoke jobCompleted(). The attached patch appears to work. Note that the null check is also required for longer timeouts.
was:
After running the system for a while, we now have 1000's of entries in the ode_job table with type = 'INVOKE_CHECK'.
The handler of these events doesn't appear to invoke jobCompleted(). The following patch appears to work. Note that the null check is also required for longer timeouts.
Index: engine/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
===================================================================
--- engine/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java (revision 927259)
+++ engine/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java (working copy)
@@ -555,11 +555,12 @@
if (__log.isDebugEnabled()) __log.debug("handleWorkEvent: InvokeCheck event for mexid " + j.getMexId());
PartnerRoleMessageExchange mex = (PartnerRoleMessageExchange) getMessageExchange(j.getMexId());
- if (mex.getStatus() == MessageExchange.Status.ASYNC || mex.getStatus() == MessageExchange.Status.ACK) {
+ if (mex != null && (mex.getStatus() == MessageExchange.Status.ASYNC || mex.getStatus() == MessageExchange.Status.ACK)) {
String msg = "No response received for invoke (mexId=" + j.getMexId() + "), forcing it into a failed state.";
if (__log.isDebugEnabled()) __log.debug(msg);
mex.replyWithFailure(MessageExchange.FailureType.COMMUNICATION_ERROR, msg, null);
}
+ process._contexts.scheduler.jobCompleted(jobInfo.jobName);
return;
}
> INVOKE_CHECK jobs are not cleaned up
> ------------------------------------
>
> Key: ODE-817
> URL: https://issues.apache.org/jira/browse/ODE-817
> Project: ODE
> Issue Type: Bug
> Components: BPEL Runtime
> Affects Versions: 2.0-beta2
> Environment: Path: .
> URL: http://svn.apache.org/repos/asf/ode/trunk
> Repository Root: http://svn.apache.org/repos/asf
> Repository UUID: 13f79535-47bb-0310-9956-ffa450edef68
> Revision: 927259
> Node Kind: directory
> Schedule: normal
> Last Changed Author: vanto
> Last Changed Rev: 915457
> Last Changed Date: 2010-02-24 01:57:37 +0800 (Wed, 24 Feb 2010)
> Reporter: Terry Mueller
> Attachments: ODE-817.patch
>
>
> After running the system for a while, we now have 1000's of entries in the ode_job table with type = 'INVOKE_CHECK'.
> The handler of these events doesn't appear to invoke jobCompleted(). The attached patch appears to work. Note that the null check is also required for longer timeouts.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.