IT Process Automation

Expand all | Collapse all

PAM exception handler

  • 1.  PAM exception handler

    Posted Mar 16, 2017 09:36 AM

    Can someone explain me what are the prerequisites for the Exception Handler to trigger?

     

    It seems that the same error would not trigger the exception handler if there is a "valid and running" concurrent flow in the same process. Am i right?

     

    See the image.

     

     

    The failed operator did not triggered the exception handler. In a linear process, the same operator does trigger the exception handler.

     

    Explanations please



  • 2.  Re: PAM exception handler

    Broadcom Employee
    Posted Mar 16, 2017 01:49 PM

    From your screenshot I would guess that you are correct, since there is a valid executing path the process probably assumes things are going to continue to move forward.

     

    What happens if you break the line to 2 altogether so there is no connection to that path? 



  • 3.  Re: PAM exception handler

    Posted Mar 16, 2017 04:06 PM

    The exception handler goes off when the loop is completed, and continues to trigger at each loop iteration. Even if the error does not appear again!

     

    what the **** is going on

     

    I'll try to reproduce it in a simpler process so i can post it for you to test.



  • 4.  Re: PAM exception handler

    Posted Mar 16, 2017 04:06 PM

    Apparently "h e l l" is a forbidden word. My apologies.



  • 5.  Re: PAM exception handler

    Posted Mar 17, 2017 09:57 AM

    Look MWNiebuhr,

     

    As I initially thought two comments ago, the exception handler does not trigger when the loop complete.

     

    When an operator does not have any valid exit port, the process does not assumes that everything is going fine like it does with the failure.

     

     

    Run_JavaScript_1 has has no valid exit port on the specific loop iteration. It then triggers the exception handler with an Unidentified Response.

     

     

     

    So to summarize,

     

    When there is an error in the execution but there is a valid Path : no exception.

    When there is an operator without exit port but there is a valid Path : exception.

     

    Can you explain?



  • 6.  Re: PAM exception handler

    Posted Mar 20, 2017 12:45 PM

    MWNiebuhr no idea?

     

    I'll open a support case otherwise.



  • 7.  Re: PAM exception handler

    Broadcom Employee
    Posted Mar 20, 2017 12:51 PM

    Sorry Pier-Olivier, I am not sure what the behavior should be and have not had a chance to build a process to test this.    Please feel free to engage the support team to investigate this.



  • 8.  Re: PAM exception handler
    Best Answer

    Broadcom Employee
    Posted Mar 28, 2017 02:26 PM

    The important difference between an Operator within a Loop vs an Operator just in your process is that the single operator is treated as a single action, it completes and the process moves on; when you have Operators within a Loop the Orchestrator is treating the entire loop as 1 object and everything within is considered self contained until the entire loop has completed and any post execution code for the loop or exception handling is only applied once the loop has completed.
      

     
    Unfortunately I do not see anyway to cause exception handling to occur within a loop, so you will either have to build into the loop the exception handling actions, or probably a better option would be to have output paths that in the event of a failure. If you look in the PAM_PreDefinedContent/Handling Conditions and Loops/03 Early Exit from the Loop" process shows how to cause a loop to stop looping.



  • 9.  Re: PAM exception handler

    Posted Mar 31, 2017 02:06 PM

    As i said in the case, there is no consistency in PAM's behavior with loops.

     

    I can understand that loops are handled as one operator (because it was easier to code i guess).

     

    What i do not understand is : Why are blocked operator handled as a single operator inside a loop and not failed operator? Is there some logic behind that?

     

     

    For the others :

     

    In a loop :

    When an operator is blocked because there is no valid exit ports, exception handler is triggered.

    When an operator failed because of an error (javascript or whatever), exception handler is not triggered.

     

     

     

    And as per you said, this is not a valid answer to exit the loop when there is an error. You may want to handle it and let the loop continue.

     

    So i will raise an idea on this.



  • 10.  Re: PAM exception handler

    Broadcom Employee
    Posted Mar 31, 2017 02:27 PM

    Why are blocked operator handled as a single operator inside a loop and not failed operator? Is there some logic behind that?

    This is because when a Process reaches a point where there are no paths for the flow to continue down, the entire process is blocked.    It doesn't matter if the blocking occurs within a loop, the process has no path to follow so it cannot complete the loop and the entire process immediately enters a blocked state.

     

    In the case of your javascript exception, this is a 'Failed' result and as long as there is a Failed exit path the process will continue with whatever actions are appropriate and defined.  

     

    As a loop is treated by the orchestrator and the process as a self contained set of actions Exception handling is not called until the loop has completed. 

     

    So a javascript error within a loop will not trigger exception handling until the loop completes; unless there is no valid path for the loop to complete, in which case the entire process enters a blocked state.

     

     

    I agree that it would be nice to be able to trigger exception handling within a loop and have given your IDEA an up vote.



  • 11.  Re: PAM exception handler

    Posted Mar 31, 2017 02:37 PM

    To that i will reply :

     

    The Blocked operator triggers the Exception handler even if there is a valid path running at the same moment

     

     

    The exception handler was triggered in this process.



  • 12.  Re: PAM exception handler

    Broadcom Employee
    Posted Mar 31, 2017 02:50 PM

    In that example, the loop will complete once the delay completes, then the overall process will enter the Blocked state to as there is no path to continue down. 

    If multiple loops are defined in the Repeat Count it will complete all the loops then enter the blocked state. 



  • 13.  Re: PAM exception handler

    Posted Mar 31, 2017 02:58 PM

    The exception handler was triggered way before the loop complete. And it was triggered during each iteration.

     

    Yes the process will enter the blocked state as i did not linked the loop to anything. This is not the point here.

     

    So this process triggered my exception handler 8 times. 

     

     

    And at the end, it enter the completed State