-
Notifications
You must be signed in to change notification settings - Fork 360
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
AN-214 Redirect workflow existence queries from metadata to summary #7575
Conversation
Note: As it stands, this PR could return false positives for a workflow that has been archived from metadata but still has a summary. I think this is already true for the function converted in #4617 I'm not sure whether it's a problem per se, but certainly notable. Update: based on the analysis in #7575 (comment) the old function |
Serious cobwebs here, but could there be false negative issues here if metadata rows exist for the workflow but a summary row hasn't been created for it yet? Like if a workflow is submitted and status is polled shortly thereafter. |
We definitely have had complaints about the existing code that a just-submitted workflow returns a 404 on status endpoint. But Terra doesn't care because Rawls polls every 3 minutes or whatever and it catches up. The summarization interval is 1 second, both by default and in Terra. So the window for issues would be extremely small. |
@aednichols since we ran out of time mobbing meeting earlier today, what do you think about adding a |
@salonishah11 it looks like we are already doing an archive status check immediately after the existence check: cromwell/engine/src/main/scala/cromwell/webservice/routes/MetadataRouteSupport.scala Lines 240 to 249 in 6e21229
Today on Prod when I open the page for an archived workflow like this one (canary workspace) Cromwell responds with the following JSON:
It comes from |
Description
We make this query constantly, looks like the single most frequent one against metadata. All it does is check whether the workflow ID is valid by checking whether >1 metadatum exists for it.
We already started down the path of checking summary instead of metadata, see #4617. It just makes way more sense to me to check a table with 77M rows than 36B.
It is potentially implicated in the 2021 database migration that failed at the very end, you can see a bunch of them in this screenshot (2021-11-09):
Slack link to contemporary discussion.
Contemporary analysis in JIRA.
Release Notes Confirmation
CHANGELOG.md
CHANGELOG.md
in this PRCHANGELOG.md
because it doesn't impact community usersTerra Release Notes