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
feat(workflow): avoid unnecessary parent runs #1476
Conversation
aa6ae11
to
8bcae46
Compare
970aa57
to
c7f74bb
Compare
5cc582a
to
dc51321
Compare
f647883
to
7da8de3
Compare
I tested this a bit and it looks very nice. I did find an issue/inconsistency in how rerun/update works, but I'm not sure if this is related to this PR or if it's how things always worked. Let's say we have the following situation:
With And then I change Now I do I do another Now I do a On a more general level, I think we need to decide what Rerun only running the last step (instead of the whole DAG) is ok, to prevent a user from accidentally kicking off a huge chain of steps, but it's something we should communicate clearly. And then the I think it comes down to "We have one, and only one, big, possibly disconnected DAG at each point in time in the repo and each run/update/rerun modifies this DAG and acts upon it(deletes and adds edges)", in which case parent The current implementation seems to do a bit of a mix of things, and I'm really not sure what we want to address in this PR and what should be held off for the graph building redesign. |
I've tested your scenario on master and it has the same issue with |
327b204
to
543017d
Compare
62fe21c
to
491d831
Compare
Description
Reuse parent runs in WorkflowRun when possible. Do not create parent runs when there is only a single step. Do not serialize WorkflowRun.
Fixes #1399
Fixes #1400