Chained callbacks hang and when combined produce "Maximum depth..." error

I have an app that stores data in a dcc.Store using a callback triggered by n_clicks from a dbc.Button (I’ve also tried html.Button) combined with a separate chained callback that creates a DataTable component triggered by the modified_timestamp property of the dcc.Store. However, the issue is that this arrangement hangs and does not appear to work.

Please clone my self-contained repo with this exact example.

Please clone it here to test:

I also have a commented-out callback that I would also appreciate some help with. This separate callback combines the first two into one. This does actually display the data correctly, however it returns the “Maximum depth exceeded…” error citing some React messages. I don’t want to use this single callback version as a page refresh won’t persist the session stored dcc.Store data to keep the table correctly displayed.

Please advise on these two errors and if I’m doing something wrong here with either. Thank you!

Hey @rfrasier welcome to the forums.

I think you might have found a bug.

The issue is related to the storage type. Your app and all three callbacks are actually working as expected if you set the storage type to the default value “memory”.

Thanks for testing this out. It does seem like a bug when set to “session” then. I’m not really sure how to go about submitting this to Plotly but I’ll have to research that. If you have any advice there, I’d appreciate it.

@rfrasier

hi @rfrasier
Thank you for sharing this. Can you please report this potential bug on Dash’s GitHub repo?

1 Like