You are viewing limited content. For full access, please sign in.

Question

Question

Why does Forms process keep terminating?

asked on June 24, 2022 Show version history

I've had a few Forms processes terminate over the last week or so, and was surprised because I had just reconfigured that (older) process to take advantage of some of Laserfiche's new and improved features, as well as other improvements I've just learned in my years working with Laserfiche.  I did this partially in the hopes of improved stability and maintainability.

 

Updated problem description - While I at first believed this had to do with reminder emails, that no longer appears to be the case.  Instead, it seems like the Forms process terminates whenever it reaches the expiration period of a timer event attached to a user task.  The timer event is non-interrupting, yet when the timed period elapses the entire process terminates.


Using Laserfiche Forms Professional Version 11.0.2201.20436

0 0

Answer

SELECTED ANSWER
replied on July 11, 2022

Hi Sean,

As far as I know, the timer should not terminate user task if its step history appears before user task. Following is an screenshot of a simple test instance:

 

According to the instance error, I would suggest review the outflow conditions of last executed step, which is 'Call Status Check Workflow' in instance history screenshot. Is any outflow can be taken in the terminated scenario?

If any step cannot proceed to next step, the entire instance will be terminated, and as a result the user task will be terminated. 

0 0

Replies

replied on June 27, 2022

Hi Sean,

It is not expected behavior that reminder failure will cause instance terminated. Could you share error logs of such terminated instance? 

Also, to make sure I am understanding the scenario correctly, could you clarify what does 'a supervisor leaves' mean? Does it mean that the supervisor is no longer valid within Forms system?

1 0
replied on June 30, 2022

Hi Ziyan,

 

First, to answer your question, 'a supervisor leaves' does indeed refer to that user no longer being a valid Forms user.

 

Regarding the error itself, my frustration got the better of me, and had thought the termination was related to the Supervisor notification due to the two coinciding.  What appears to be happening, instead, is that somehow Forms is calling the Timer event attached to the user task before calling the task itself.  To be clear, this is not a separated timer event, but a subordinate timer assigned to the task, and a non-interrupting one at that.

 

When the timer expires, it throws a Routing error. I'm thinking that's due to the timer as an individual event not really existing, but I don't have anything to back that up with.  As a potential solution, I have deleted and re-created the timer event, then initiated a new instance of the Forms process that goes to that user task.  I will know tomorrow if that worked.

1 0
replied on July 1, 2022

It did not work.  I will post an update if I  find a solution, as well as updating the question / description itself.

0 0
replied on July 7, 2022

Hi Sean,

So the symptom of the terminated instance is that, a boundary timer catch event starts before the its user task starts? What is the configuration of the timer then? 

0 0
replied on July 7, 2022

Hi Ziyan,

Yes, this thing is causing me no end of trouble.  At this point, I have little choice but to just delete the timer event entirely, since it keeps causing our Forms process to terminate, and Incidents will go unreported if I'm not watching carefully to make sure each terminated instance gets restored.

 

My most recent attempt at fixing this issue consisted of these steps:
 

  1. Delete the Timer Catch event on the Originator task
  2. Bring my test instance through the related user step WITHOUT the timer attached
  3. Verify that the timer didn’t show up in the Monitor history this time (it didn’t)
  4. Re-submit the Form to move it back to the ‘downstream’ administrative task
  5. Restore the timer event on the Originator task
  6. Send the task back to the originator again
  7. See if the timer event would behave itself this time (it did not – still terminated)

 

I am attaching screenshots of the timer event / configuration, as well as the Monitor history. If you have any thoughts on how I can fix this that would be really great, since I'm not feeling a lot of faith towards timer events right now.  Even if the answer is "you're an idiot, just change this little thing" I would rather feel stupid than have tasks that terminate whenever they hit a timer!

IR timer config.png
IR timer monitoring.png
0 0
replied on July 11, 2022 Show version history

The instance history shows the timer was successfully executed and went to next step, so it seems less likely to me that it is the timer that terminated the user task. 

 

Just to confirm, the interrupting signal boundary event was not triggered in that case, right? Could you share the detailed instance error around 7/2/2022 4:49:36 PM of that instance?

0 0
replied on July 11, 2022 Show version history

The signal event shouldn't have triggered; the condition for it to do so is to have a status field set to 'Cancelled' and I can confirm it is not set to that. 

In addition, one of the reasons I suspect the timer is because it always shows up in the task history BEFORE the user task itself.  This isn't the case with other timer events, even within the same Forms process, as shown in the attached image.


Here's a copy of the error log, though, per your request:

timer event after user task.png
0 0
SELECTED ANSWER
replied on July 11, 2022

Hi Sean,

As far as I know, the timer should not terminate user task if its step history appears before user task. Following is an screenshot of a simple test instance:

 

According to the instance error, I would suggest review the outflow conditions of last executed step, which is 'Call Status Check Workflow' in instance history screenshot. Is any outflow can be taken in the terminated scenario?

If any step cannot proceed to next step, the entire instance will be terminated, and as a result the user task will be terminated. 

0 0
replied on July 13, 2022

Thanks for the visual Ziyan.  Since all the other (successful) timer events I looked at had the timer event after the task, I had locked onto that as a primary contributor.  It was a long road, but you have finally led me to the understanding that this was, indeed, my fault!

 

I had looked at the routing options several times, but consistently failed to see the problem.  The routing options were either Status = Cancelled or Status != Cancelled.  Somehow when I was redoing this Forms process, I accidentally put the '!' to the right of the '=' sign.  I moved it where it is supposed to be, and it is now working.  Yep; I feel dumb, but I'm glad to have it fixed!

1 0
You are not allowed to follow up in this post.

Sign in to reply to this post.