Editor Bug: Circular Definition Error

The app I’m currently developing is giving Circular Definition errors on some tables regarding the initial value or appformula expression and therefore the app definition is broken and cannot be fetched. However the errors indicated for circular definition; one of them contains no any initial value or appformula, and the other is a simple expression like [Start_Date] + “30.00:00:00” where [Start_Date] has an initial value of TODAY() only. I have refreshed many times but doesn’t help. I cannot continue. Can someone from the team investigate?

1 22 1,116
22 REPLIES 22

Exactly I am having one now. I am trying to submit a support ticket and getting this

ouch

When I restore my app to previous version, get the same 404 error.

@Steven_Aung
Something might have broken when they are working on to integrate the new feature set for the detail views. I have also read a couple of posts regarding that the form can be saved even a required field is left empty. Weird.

I think we better sit out. I was making changes to fix the circular error but I realized that exact same formula works in older version. Get 404 error when restoring my app to older version. Submit ticket, get 404 error.

So better just wait.

You may have a right but this is so nasty and annoying as well. I need to continue and finish the app but I unfortunately can’t right at the moment. Phew.

I have few experience before. I tried to fix something during the event like this and I ended up messing up my app

Here are the screenshots:


@morgan @JCadence @tony @praveen
Do you have any inputs?

Any luck with your support ticket?

I am still getting pushed back from supoort that it must be related to
AppSheet DNS problem: Cloudflare outage RESOLVED

For me, it is obviously two seperate issues.

Levent, there was a fix that rolled out today that enabled reset_on behavior in workflow actions. As part of this fix there is an additional check for fields with initial values to ensure that the initial values and reset-if conditions do not have circular dependencies.

If you open an intercom ticket with your app details I can look into whether your app was affected by that.

Hi @Dan_Bahir, I also opened a ticket. Please take a look

I am also having the same issue on 2 Apps that were working until around the time of the outage.

Have tried previous versions, etc. Same result as above.

Indeed, this is nothing to do with the Cloudflare issue. it was just unfortunate timing that the cloudflare issue happened a few minutes after our daily deployment.

So our deployment started checking for cycles that also span initial values (we used to not check for these). So that is the source of the errors you are seeing, as @Dan_Bahir described.

Are you able to identify the cycle that occurs thru InitialValue expressions and app formulas? In parallel, Dan and I will check to see if we have been too aggressive in the logic of this change (the change itself is rolled out gradually across the customer base, so it must have just been bumped up to hit your account and that is why you are seeing the issue now).

As @Steven_Aung confirmed (thanks Steven!), the new cycles discovered are because of the use of an expression/formula for the Reset on Edit property of a column.

Here is the explanation for the issue: if you set up a formula for Reset_On_Edit for a column A and it depends on B, then this dependency is included when checking the dependencies for initial value formulas. I’m still a bit confused about this, so going to request @Dan_Bahir to explain further. And also, definitely, to improve the error message to guide you to resolve the error.

But anyway, for now, if you see this error, the cause is a Reset_On_Edit formula in the affected table. — either directly on the column that is flagged as having a cycle or a Reset_On_Edit formula in another column references this column. Your short-term fix is to remove the Reset_On_Edit formula.

If you really need the reset on edit, the workaround is

  • create an action that will reset the affected column
  • create a workflow with UPDATE_ONLY event which will trigger the above action.

Reset condition check can be added either in the workflow or action condition.

In my case, that approach does not trigger cycles issue.

Our previous dependency logic did not calculate the dependencies of the formulas in Reset_On_Edit and the conditional Reset_If. That resulted in incorrect evaluation of these rules as fields referenced in the Reset_On_Edit and the Reset_if formulas were not calculated before the Reset_On_Edit and the Reset_if.

The algorithm was fixed as a result apps that had these circular dependencies defined but were previously undetected are now detected.

If you believe that you are getting this error but there is no circular dependency please let us know.
If you wish to revert to the previous dependency algorithm please let us know and we can exclude your apps from the dependency check until you have the time to review the logic in your app.

Hi @Dan_Bahir,
Is there any change in how reset on edit and/or reset_if behave ? Could new updates/check affect the reset behavior and how?

At least one of my app starts having wrong time values in columns that rely on reset on edit. I didn’t make any update on that app for a while. I regenerate affected table and there is no circular error. The issue entries were showing up starting from July 18.

I still cannot pin point how the behavior change. Any information will be helpful now.

Thanks

FYI @praveen

Based on my debugging, the check added for reset_on_edit was totally skipped and reset the value.

Yes, there is a change.

Previous to this fix Reset_On_Edit want being applied in workflows. So if you have a workflow that modified a row that had Reset_On_Edit for a column with an Initial value it would not set the value to the required initial value.

This fix caused that initial value to be calculated and set.

If you think the initial value is not being calculated correctly I would be happy to look into it.

It could be related to my case. Reset on edit were triggered via a workflow in a table. The problem is they should not get reset because of their conditions. (I double checked the condition)

When I manually update the affected rows, the values does not get reset. So either there was a fix at the time I checked or the issue occur when the changes occur specifically from a workflow edit.

I will let you know when i get more detail.

It can confirm that reset one edit check was skipped.
My use case -

  • Add an item to Table B -> Trigger a work flow -> Trigger an action to modify a column in a list of rows in Table A

I will create a internal ticket. Please take a look @Dan_Bahir

Update: just checked and reset condition checking is working again. So it seemed that there was a bug for reset on edit for two days and it is fixed now.

Let’s see how that goes when new data is coming in.

Top Labels in this Space