diff --git a/CHANGELOG.md b/CHANGELOG.md index ba8fb37d..2b07486f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ The pipeline is now considered to be a complete and suitable replacement for the "grid plots". - Fill in accurate read information in the blobDir. Users are now reqiured to indicate in the samplesheet whether the reads are paired or single. +- Updated the Blastn settings to allow 7 days runtime at most, since that + covers 99.7% of the jobs. ### Software dependencies diff --git a/conf/base.config b/conf/base.config index f24b6b99..25648852 100644 --- a/conf/base.config +++ b/conf/base.config @@ -106,14 +106,15 @@ process { withName: "BLAST_BLASTN" { - // There are blast failures we don't know how to fix. Just ignore for now - errorStrategy = { task.exitStatus in ((130..145) + 104) ? (task.attempt == process.maxRetries ? 'ignore' : 'retry') : 'finish' } + // There are blast failures we don't know how to fix. We just give up after 3 attempts + errorStrategy = { task.exitStatus in ((130..145) + 104) ? (task.attempt == 3 ? 'ignore' : 'retry') : 'finish' } + // Most jobs complete quickly but some need a lot longer. For those outliers, - // the CPU usage remains usually low, often nearing a single CPU - cpus = { check_max( 6 - (task.attempt-1), 'cpus' ) } - memory = { check_max( 1.GB * Math.pow(4, task.attempt-1), 'memory' ) } - time = { check_max( 10.h * Math.pow(4, task.attempt-1), 'time' ) } + // the CPU usage remains usually low, averaging a single CPU + cpus = { check_max( task.attempt == 1 ? 4 : 1, 'cpus' ) } + memory = { check_max( 2.GB, 'memory' ) } + time = { check_max( task.attempt == 1 ? 4.h : ( task.attempt == 2 ? 47.h : 167.h ), 'time' ) } } withName:CUSTOM_DUMPSOFTWAREVERSIONS {