End Node Vs terminate Node

Certified Lead Developer

What is the main difference between end node and terminate node from process/architect perspective like archive, data management/ engine?

PS: we all know the implementation that if terminate node execute then it will close any in progress node in a process unlike end node.

  Discussion posts and replies are publicly visible

Parents
  • 0
    Certified Lead Developer

    There is no difference in regards to data management.

  • The only difference is that processes that use terminate will usually end up finishing sooner (or at least are less likely to hang around unfinished), so it could have an indirect effect on your memory usage.

    In general I'd recommend using terminate nodes on most process models (unless you explicitly have a reason not to) just to make it less likely that you end up with a bunch of abandoned process models. Terminates are also easier for troubleshooting, because if you end up creating multiple active flows as part of starting / restarting nodes, then you don't need to ensure that all of your active flows finish.

  • 0
    Certified Lead Developer
    in reply to Stefan Helzle

    So conclusion is if we have this kind parent child sub-process scenario, we must give terminate node in child process else if a process is stand alone then it is not mandatory to have terminate node.

    Am I right?

  • 0
    Certified Lead Developer
    in reply to Dhananjay Kumar

    There is no "must" and no "mandatory" here. You need to understand what it does, and then use it to fit your requirements.

    described it pretty well.

  • 0
    Certified Lead Developer
    in reply to Stefan Helzle

    Probably then it must or mandatory based on scenario.

    Thanks for the explanation

  • 0
    Certified Lead Developer
    in reply to Peter Lewis

    Thanks for detailed explanation

  • Hi Peter,

    Is there any way we can restart or re activate the terminated process? One of our process models is set as delete instances after 14 days of completion and the instance is completed with the terminated end node. But now we want one of the instances not to get deleted. Is it achievable?

  • 0
    Certified Lead Developer
    in reply to Yashaswini

    I think the safest way would be to modify that process instance and add a scheduled empty script task that then goes to a terminating end event. This way you can keep that process alive as long as you need it.

    What is the reason for this?

  • 0
    Certified Associate Developer
    in reply to Stefan Helzle
    "ends" is defined by: "There are no active nodes anymore".

    Dear Stefan, if this is the case, then the parent process should never proceed further (even if there is no error in child process / happy path ) if the child process has end event instead of terminate end. But in this case the parent process with fail to proceed only when there is an error in child process. 

    Please suggest.

  • 0
    Certified Lead Developer
    in reply to Vasudeva

    I do not understand why the parent process should not proceed if the child process completes ?!?!

    What exactly is your question?

  • 0
    Certified Associate Developer
    in reply to Stefan Helzle

    The question asked by   was, if a sub process having an end event fails, the parent process is not proceeding further even the sub process is corrected and rerun. 

    So you have suggested to have terminate event instead of end event in the sub process, this way the parent process will resume.

    This implies that the parent process will proceed further only if the sub process ends with terminate event. 

     Is my assumption correct ?? 

  • 0
    Certified Lead Developer
    in reply to Vasudeva

    I can't really tell out of my head, how a terminate end event impacts failed node instances and whether a parent process would proceed.

    I suggest to do a quick test.

    But, the main purpose of terminating end events is not to just skip filed nodes, but to cancel any left over timer events or scheduled nodes.

Reply
  • 0
    Certified Lead Developer
    in reply to Vasudeva

    I can't really tell out of my head, how a terminate end event impacts failed node instances and whether a parent process would proceed.

    I suggest to do a quick test.

    But, the main purpose of terminating end events is not to just skip filed nodes, but to cancel any left over timer events or scheduled nodes.

Children
No Data