Infinity loop: Frozen application after upgrading to 2023.06-ext9

Hi there,

We just upgraded A12 from 2023.06-ext6 to 2023.06-ext9 w/o changing any models but when entering data in the form, the calculation services try to calculate and re-compute dependent fields in an infinity loop, Please contact me I will send you a video due to discourse limitation.

As I can see the form-engine has been changed related to updateDependencies and evaluateDependentFields. See models:

Do you have any idea? because we didn’t make any model changes, only dependencies upgrading.

Versions:

"@com.mgmtp.a12.client/client-core": "14.7.1",
"@com.mgmtp.a12.dataservices/dataservices-access": "36.3.10",
"@com.mgmtp.a12.formengine/formengine-core": "36.7.5",
"@com.mgmtp.a12.overviewengine/overviewengine-core": "36.5.1",

Thanks & Best regards!

It is possible to create infinite update loops between form model dependencies (dependent field / dependent enumeration / dependent group) and document model computations.

The SME runs consistency checks on the form and document model to find and report such value change cycles.

Have you opened your form model in the SME after upgrading?
If there are no reports of cycles, you might have found a scenario that is not yet covered with by the cycle checks.

Hi @erik-radiant-gorge ,

The SME says nothing about the cycles when clicking on validate or access the form model.

Hi,

as an additional information to the symptom: Already the preview in the SME freezes when trying to enter data into the affected date fields.

How can we find out if we have found a new cycle? Or if this is another issue entirely?

Thanks and cheers!

Hi,

you just found a pretty rare bug, congratulations :smiley: You need at least three computed fields, two of them have to be boolean fields in a computation chain. I have created A12E-3410 to fix it, should be delivered for 2023.06-ext10. I have attached minimal models to reproduce it.

Cycle-FM.json (7.3 KB)
Cycle-DM.json (6.7 KB)

Hi @tim-deep-thread ,

Thanks for figuring out the problem!