You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implemented a long callback for a long processing function that takes 60 - 120 seconds. The browser will start checking if the callback is finished once per second. If I run the dash code on my PC on http://127.0.0.1:8080 using either the built in Flask server or Waitress, the page will load without an issue. When deployed to a server, it will enter into an infinite loop. After 60 seconds, the title of the website will turn to "Updating..." and the content will not load. When using the built in network monitor in Firefox, there are POST requests submitted by the browser every second, followed by the the browser attempting to download data and stopping at the next post request. Due to the speed of the download, the POST request never completes and the page doesn't load.
By changing the hard coded interval_time in dash.py from 1000 to 10000 I was able to eliminate this issue. With the new settings, Firefox network monitor timed the POST response to be 3.5 seconds.
When the long callback is ready for the user's browser to download, the interval_component should be disabled in an initial POST, followed by a second POST with the full data set. In the current behavior, a single POST disables the interval and delivers the full data set. If the download time exceeds the interval time, then the browser will not receive the data.
The text was updated successfully, but these errors were encountered:
The bug
Implemented a long callback for a long processing function that takes 60 - 120 seconds. The browser will start checking if the callback is finished once per second. If I run the dash code on my PC on http://127.0.0.1:8080 using either the built in Flask server or Waitress, the page will load without an issue. When deployed to a server, it will enter into an infinite loop. After 60 seconds, the title of the website will turn to "Updating..." and the content will not load. When using the built in network monitor in Firefox, there are POST requests submitted by the browser every second, followed by the the browser attempting to download data and stopping at the next post request. Due to the speed of the download, the POST request never completes and the page doesn't load.
By changing the hard coded interval_time in dash.py from 1000 to 10000 I was able to eliminate this issue. With the new settings, Firefox network monitor timed the POST response to be 3.5 seconds.
Expected behavior
When the long callback is ready for the user's browser to download, the interval_component should be disabled in an initial POST, followed by a second POST with the full data set. In the current behavior, a single POST disables the interval and delivers the full data set. If the download time exceeds the interval time, then the browser will not receive the data.
The text was updated successfully, but these errors were encountered: