mirror of
https://github.com/MillironX/nf-configs.git
synced 2024-11-22 08:29:54 +00:00
Modularised error handling strategy to per pipeline basis
This commit is contained in:
parent
c9c4d02f0d
commit
55971bb94d
5 changed files with 41 additions and 14 deletions
|
@ -15,6 +15,14 @@
|
||||||
|
|
||||||
process {
|
process {
|
||||||
|
|
||||||
|
// error and retry handling
|
||||||
|
|
||||||
|
errorStrategy = { task.exitStatus in [143,137,104,134,139,140] ? 'retry' : 'finish' }
|
||||||
|
maxRetries = 2
|
||||||
|
|
||||||
|
|
||||||
|
// process labels
|
||||||
|
|
||||||
withLabel:process_low {
|
withLabel:process_low {
|
||||||
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
||||||
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
||||||
|
@ -72,3 +80,4 @@ def check_max(obj, type) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,14 @@
|
||||||
|
|
||||||
process {
|
process {
|
||||||
|
|
||||||
|
// error and retry handling
|
||||||
|
|
||||||
|
errorStrategy = { task.exitStatus in [143,137,104,134,139,140] ? 'retry' : 'finish' }
|
||||||
|
maxRetries = 2
|
||||||
|
|
||||||
|
|
||||||
|
// process labels
|
||||||
|
|
||||||
withLabel:process_low {
|
withLabel:process_low {
|
||||||
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
||||||
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
||||||
|
@ -72,3 +80,4 @@ def check_max(obj, type) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,14 @@
|
||||||
|
|
||||||
process {
|
process {
|
||||||
|
|
||||||
|
// error and retry handling
|
||||||
|
|
||||||
|
errorStrategy = { task.exitStatus in [143,137,104,134,139,140] ? 'retry' : 'finish' }
|
||||||
|
maxRetries = 2
|
||||||
|
|
||||||
|
|
||||||
|
// process labels
|
||||||
|
|
||||||
withLabel:process_low {
|
withLabel:process_low {
|
||||||
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
cpus = { check_max( 2 * task.attempt, 'cpus' ) }
|
||||||
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
memory = { check_max( 4.GB * task.attempt, 'memory' ) }
|
||||||
|
|
|
@ -15,6 +15,11 @@
|
||||||
|
|
||||||
process {
|
process {
|
||||||
|
|
||||||
|
// error and retry handling
|
||||||
|
|
||||||
|
errorStrategy = { task.exitStatus in [143,137,104,134,139,140,247] ? 'retry' : 'finish' }
|
||||||
|
maxRetries = 2
|
||||||
|
|
||||||
|
|
||||||
// process labels
|
// process labels
|
||||||
|
|
||||||
|
|
|
@ -28,16 +28,6 @@ params {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// container engine
|
|
||||||
|
|
||||||
singularity {
|
|
||||||
|
|
||||||
enabled = true
|
|
||||||
autoMounts = true
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// hpc configuration specific to ShARC
|
// hpc configuration specific to ShARC
|
||||||
|
|
||||||
process {
|
process {
|
||||||
|
@ -49,9 +39,15 @@ process {
|
||||||
queue = { task.time <= 6.h ? 'shortint.q' : 'all.q' }
|
queue = { task.time <= 6.h ? 'shortint.q' : 'all.q' }
|
||||||
clusterOptions = { "-l rmem=${task.memory.toGiga()}G" }
|
clusterOptions = { "-l rmem=${task.memory.toGiga()}G" }
|
||||||
|
|
||||||
// error and retry handling
|
}
|
||||||
|
|
||||||
errorStrategy = { task.exitStatus in [143,137,104,134,139,140] ? 'retry' : 'finish' }
|
|
||||||
maxRetries = 2
|
// container engine
|
||||||
|
|
||||||
|
singularity {
|
||||||
|
|
||||||
|
enabled = true
|
||||||
|
autoMounts = true
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue