-
Notifications
You must be signed in to change notification settings - Fork 11.3k
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
refactor(core): Simplify marking logic in binary data manager (no-changelog) #7046
Conversation
Great PR! Please pay attention to the following items before merging: Files matching
Files matching
Make sure to check off this list before asking for review. |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## master #7046 +/- ##
==========================================
- Coverage 32.10% 32.10% -0.01%
==========================================
Files 3186 3186
Lines 195780 195756 -24
Branches 21355 21351 -4
==========================================
- Hits 62858 62841 -17
+ Misses 131888 131881 -7
Partials 1034 1034
☔ View full report in Codecov by Sentry. |
@@ -11,7 +11,6 @@ import type { IBinaryDataConfig, IBinaryDataManager } from '../Interfaces'; | |||
import { FileNotFoundError } from '../errors'; | |||
|
|||
const PREFIX_METAFILE = 'binarymeta'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm wondering if we should also rename this to flagged
or something like that to make this code less confusing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Definitely, I'll clarify names in the FS manager soon as part of the upcoming refactors.
|
Got released with |
POST /executions/delete
. No marker file, so untouched by pruning./meta
. We later delete all three during pruning.onWorkflowPostExecute()
hook we delete that execution, so the second flow applies. But formerly, we did not store unsaved executions in the DB ("ephemeral executions") and so we needed to write a marker file at/persistMeta
so that, if the ephemeral execution crashed after the step where binary data was stored, we had a way to later delete its associated dangling binary data via a second pruning cycle, and if the ephemeral execution succeeded, then we immediately cleaned up the marker file at/persistMeta
during theonWorkflowPostExecute()
hook.This creation and cleanup at
/persistMeta
is still happening, but this third flow no longer has a purpose, as we now store unsaved executions in the DB and delete them immediately after. Hence the third flow can be removed.