IQSS/11264 - Add pseudo-exponential backoff to dataset page refresh #11269
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it: The dataset page currently refreshes every 10 seconds looking for locks to be removed, which is not very useful for long-running locks, e.g. in review, or ingest, publish, etc. with large/many files. This PR adds a pseudo-exponential backoff - in the front-end JavaScript - in the rate of refresh to reduce the load. The constants chose make the updates slightly faster for the first two refreshes and then quickly backs off to 5 minute refreshes (after ~ 90 seconds, the new algorithm will have had fewer total refreshes and will only be refreshing ~once per minute)
Which issue(s) this PR closes:
Special notes for your reviewer: This is a minor improvement, but hopefully reduces server load for in review datasets in particular, as well as long running Globus transfers, pub with many files, etc.
Suggestions on how to test this: Put a dataset in review and check the refresh rate in the browser console - verify it is slowing down.
Does this PR introduce a user interface change? If mockups are available, please link/include them here:
Is there a release notes update needed for this change?:
Additional documentation: