Hi Dash Team,
Firstly, thank you for such a wonderful tool you have built, I have gotten some things created because of your hard work, so I really appreciate it.
I do have a question related to Dash and its performance. I have built a dashboard using a data table, and I never really have a lot of data in it (say 250 rows x 20 cols). I also only run and use it it locally all on one computer.
However for some reason, it keeps forcing my browser (Chrome or Edge) into “updating” mode, when I click around certain components or the data table cells, at a normal user’s pace. It basically freezes the dashboard up, preventing proper updates of components, also preventing further clicking around, preventing the expected callbacks from working properly, until I wait some time for what seems to be a backlog of events, i.e the “updating”, to end (it can be a 10-20 second wait quite frequently until it resolves itself). And once it resolves itself, the problem will reoccur again if I click around the datatable again with a few clicks. But if I click one cell at a time, and wait a decent amount of time before doing anything else or before clicking again (e.g. 5-10 seconds between clicks), then the problem either will be ok, or won’t last as long. It is as though the program can’t handle too many things happening at once, and the browser gets overloaded. I do notice that the longer the data table, the worse the problem (e.g. if there is only 5 rows, the problem is minor, if the datatable is 250 rows, the problem becomes quite severe, though I can’t see why 250 rows is a lot).
e.g. clicking a Radio to change the Datatable data quite often causes it if I click the radio 3 times in a row
Output(‘table’,‘data’) Input(‘single_radio’,‘value’)
or
e.g when I click around my main table, which actives “active_cell” to update a few other components, say clicking 5 different cells in a row without waiting.
Output({‘type’: ‘entry_form’, ‘index’: ALL}, ‘value’)] , Input(‘table’,‘active_cell’), entry_form being a series of dropdown components.
I don’t have enough experience points to work out what the problem is, and my program is a bit too large to drop the code here. In any case, it seems to be affecting the whole browser and not one specific component, so it is hard for me to isolate the code which has a problem. But wondering if anyone has seen something like this before (perhaps related to rendering, as my limited experience in exploring the browser Devtools may highlight - see attached pics). Unfortunately, this problem makes my whole dashboard kind of inoperable for basic use. As such, any help would be greatly appreciated, and if you need any more info, please do let me know and I would be happy to provide.
Thanks
Marcus