-
Notifications
You must be signed in to change notification settings - Fork 677
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
Addressable data store (aka CID store) #5715
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Paolo Di Tommaso <[email protected]>
✅ Deploy Preview for nextflow-docs-staging canceled.
|
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
5a93547
to
27345a6
Compare
@jorgee apologies, can latest changes be made as PR against this branch? so it will be much simpler do understand what's new for me |
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]> Signed-off-by: jorgee <[email protected]> Co-authored-by: jorgee <[email protected]>
Signed-off-by: jorgee <[email protected]> Signed-off-by: Jorge Ejarque <[email protected]> Signed-off-by: Ben Sherman <[email protected]> Signed-off-by: Paolo Di Tommaso <[email protected]> Co-authored-by: Ben Sherman <[email protected]> Co-authored-by: Paolo Di Tommaso <[email protected]>
Some quick wins discussed this morning with @jorgee
|
void annotations(Map value) { | ||
setOption('annotations', value) | ||
} | ||
|
||
void annotations(Closure value) { | ||
setOption('annotations', value) | ||
} |
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.
TODO: decide whether to use tags or phase it out in favor of annotations
Signed-off-by: Jorge Ejarque <[email protected]>
Signed-off-by: jorgee <[email protected]> Signed-off-by: Paolo Di Tommaso <[email protected]> Co-authored-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
Made a few changes to cleanup and simplify some commons patterns. As general comment try reducing average cyclomatic complexity using smaller method and simpler if-block using if-guard pattern (an example here) Also it should be increased the test coverage, there are large part not tested. ![]() |
A few more comments:
|
} | ||
} | ||
catch (IllegalArgumentException e) { | ||
log.warn("Can't read CID history file: ${FilesEx.toUriString(this.path)}", e.message) |
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.
This should be review to make it work without the need for locks.
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 followed the same as the executions log file. Two executions could write the log. The other option is converting the .history
to a folder and have a file per run, the history log will be the list of the content of the files.
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.
The other option is converting the .history to a folder and have a file per run, the history log will be the list of the content of the files
I was thinking the same
} | ||
|
||
protected String storeWorkflowRun() { | ||
final normalizer = new PathNormalizer(session.workflowMetadata) |
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.
Likely this can be a class attribute to avoid creating a new instance for each task, see below
long size | ||
Instant createdAt | ||
Instant modifiedAt | ||
Map annotations |
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.
Let's add a description for these fields
Signed-off-by: Paolo Di Tommaso <[email protected]>
939840d
to
5692b67
Compare
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: jorgee <[email protected]> Co-authored-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Paolo Di Tommaso <[email protected]>
This comment was marked as outdated.
This comment was marked as outdated.
This could introduce some unexpected side effect with symlinks. We may need to introduce a specific method for it. nextflow/modules/nextflow/src/main/groovy/nextflow/processor/TaskProcessor.groovy Lines 1945 to 1947 in f1a8770
|
Signed-off-by: Paolo Di Tommaso <[email protected]>
Tentative implementation for addressable data store (very basic POC so far).
Update on 1 Mar 2025 from #5787 by @jorgee
M1 Implementation of CID store for provenance
Changes:
Known Limitations: