-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HTTP 503 when downloading CSVs #219
Comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
When a workflow has been changed but not yet rendered (so its Steps' cached render results don't exist or are stale), requests to
GET /public/moduledata/live/:id.(csv|json)
will returnHTTP 503
.Steps to reproduce:
https://www.nytimes.com
and set auto-refresh every 5min/public/moduledata/live/:id.csv
), and then close the browser windowExpected results: you get new data
Actual results:
HTTP 503
-- but if you retry a few seconds later, you'll get data.The problem: Workbench renders processes in the background, and a
GET
request is in the foreground. If the workflow isn't rendered, we can't know when it will render.This plays badly with auto-refreshes: when auto-refreshing a step, if the workflow has no steps with notifications enabled and nobody has a web client open to the workflow, Workbench skips rendering altogether. (It will only render on-demand.)
The Workbench-side workaround: when we return
HTTP 503
, we schedule another render of the workflow, in case it hasn't been scheduled yet.There are two user-side workarounds:
HTTP 503
response.HTTP 503
.A better solution is to let users "turn on" API endpoints instead of supplying them implicitly. API endpoints should always host valid data -- even if it's stale.
The text was updated successfully, but these errors were encountered: