I have a document with table buttons that generate new rows in other tables. The newly generated rows have calculations that run as a series of aggregations. Initially, this worked fine, but as the document size has grown and the record count has increased, the time it takes to run the button actions has become unacceptably slow for my needs.
I believe part of the slowdown is because every time a new row is created, it triggers the recalculation of other formulas, which seems to run for every record in the table.
These formulas do not need to be recalculated in the middle of the process. It would be ideal if I could disable the calculations during an action and re-enable them upon completion.
I tried using a SwitchIf in the formulas to make them calculate only when a canvas checkbox is set to true, then controlling that checkbox through RunActions in the button formula. However, this did not significantly improve the document’s performance.
I have run into the same limit. My table is approaching 10000 rows and each new row added triggers a recalculation of other rows. Can I have the option to disable the specific formula columns or disable calculations in general?
As far as I know, Coda does not have a setting of function to do that.
I have a statistics page reporting on 10’s of thousands of rows, and it slows down my doc big time. to solve that, I have a named switch (toggle/checkbox) and named it “NoCalc”.
I then turn off every formula that slows my doc down, by embedding the formula in a switchif().
When I want to see the results of my formulas, I turn the switch on. When I don’t need the calculations, I turn the switch off (switch to the left turns off all calculations, switch to the right turns them on).
It looks something like this
SwitchIf(NoCalc,
runactions(
here all the CFL
)
)
Obviously you can create your own variations, where the default (switch set to false() ) is when the calculations happen, but the logic is the same.
2 Likes
Thanks for raising this. Performance issues like that can definitely start to show up as tables grow.
We recently hosted a roundtable on the future of tables and databases in Coda, and some of the updates coming this spring focus on scale and performance improvements for larger datasets. It may not address this exact scenario directly, but some of the architectural changes could help with situations like the one you described.
If you’re curious, here’s the recap from the session.
I’d also love to stay in touch once these updates roll out and see whether they improve the behavior you’re seeing, or if this is still something we should continue digging into.
2 Likes