Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Web CMS (TeamSite)
is there a way to NOT inactivate concurrent tasks?
System
this probably sounds like a strange question, but I have 4 concurrent/parallell group tasks, each with a timeout value...the timeout successor task for all 4 group tasks is the same external task, named "timeout_reset"...
in a nutshell, all "timeout_reset" does is reset the timeout value on the task that timed out, send an email notification of the timeout, and then re-activate the task that timed out...
it seemed efficient to use a single "timeout_reset" task to handle any timeout, but it apparently has an undesirable side effect in that when it is activated, it inactivates not just the task that transitioned to it, but ALL of the remaining active concurrent tasks, just because they are also possible predecessors to the same task...
all examples/documentation indicate that the <inactivate> node is to inactivate any tasks that may be active, but do not directly transition to the task that was activated, so is of no help to me in resolving this "side effect" of efficiency...
short of putting in 4 separate timeout tasks for unique transitions from the 4 concurrent tasks, is there any way to NOT inactivate the concurrent tasks that have not timed out?
thanks in advance,
-R
Find more posts tagged with
Comments
Adam Stoller
Have you tried explicitly leaving out the inactivate element?
Have you tried explicitly inserting an empty inactivate element?
--fish
Senior Consultant, Quotient Inc.
http://www.quotient-inc.com
Migrateduser
I'm definitely not using the <inactivate> element on any of these tasks, it's using default behaviour...
according to the DTD, <inactivate> requires at least one <pred> element, so I hadn't tried an empty <inactivate> element...if I get a result other than an error for invalid elements, I'll post it...
any other ideas?
thanks,
-Rori
Migrateduser
I've done some playing around and think I have a workable solution...posting it in case anyone else comes across this thread with the same question I had and also to find out if anyone thinks this is an unrecommended hack instead of a workable solution :-)
you can't leave <inactivate> empty, but it would appear that the <pred> tag within it does not have to contain a valid predecessor, just a valid task...so, each of my 4 concurrent tasks have:
<timeout v="#######">
<succ v="Timeout_Reset"/>
</timeout>
and on my Timeout_Reset task, I use:
<inactivate>
<pred v='End'/>
</inactivate>
and now, anytime one of my 4 concurrent group tasks time out and activate Timeout_Reset, the other 3 stay as they are...additionally, the task that transitioned to Timeout_Reset inactivates itself by performing the transition, so it doesn't linger around causing an undesirable side effect of this workaround...