Thanks, Alexis, but i'm no closer to fully understanding why this occurs. It happens periodically now almost everyday with different deployed processes. Although I don't understand it, I have done some research into the behaviour. Here's a scenario: we'll deploy ProcessA-19, then retire it with ProcessA-20 deployment. At some point it, or another, process will fail and attempt to go into recovery mode (excuse me if I state this incorrectly), at this point ODE will create a scheduled job in an attempt to retry the service later. Here's where it gets screwy. From then on, all new calls to ProcessA will not route to ProcessA-20, but ode will attempt to route them to ProcessA-19, which is of course retired. Ode does not recover from this. It seems the only way to compensate is to redeploy ProcessA as ProcessA-21. New requests will then route correctly. Any idea here?
----- Original Message ---- From: Alexis Midon <[EMAIL PROTECTED]> To: [email protected] Sent: Wednesday, October 8, 2008 7:26:54 PM Subject: Re: Client calling retired process? Hi Chris, No new executions can be started on a retired process, but running instances can still finish their job. [1] I'm not really familiar with this part of the code, but after looking at it, it seems to me that the deployment of a new version is not atomic. Meaning that a process could be flagged as retired while the creation of a new instance is in progress, hence you're exception. does it make sense regarding your scenario? is it possible that the process gets retired while messages are coming in? [1] further details here: http://ode.apache.org/user-guide.html#UserGuide-Versioning On Wed, Oct 8, 2008 at 11:37 AM, Chris Taylor <[EMAIL PROTECTED]> wrote: > Okay, I've a deployment (called GetCodes) bundle that includes 5 > processes. 4 of the processes make calls to the fifth (it's an abstraction > layer of process business logic). When I deploy this "GetCodes" bundle > using the DeploymentService utility, I can see an incremented deployment > (say, GetCodes-40) alongside previous iterations. > > Occasionally, I'll have a client making soap calls to one of the processes > under this logical bundle that will fail with the following error: > > InvalidProcessException: Process is retired. > > In the logs, it's clear that ODE is directing this client call to > GetCodes-39 - though the client isn't explicitly attempting to call a > specific version (is that even possible?). Any clue why some clients > periodically - erroneously - are directed by ODE to a retired process > version? > > >
