gatk4-GenotypeGVCFs.nf doens't recognize Primary_000001F chromosomes for process GatherVcfs
REQUIRED for all errors and issues:
a) GATK version used: gatk4="4.1.4.1"
b) Exact command used:
In a homemade Nextflow pipeline, i use the process:
process GatherVcfs , and i modify the line 248 from this script (https://github.com/IARCbioinfo/gatk4-GenotypeGVCFs-nf/blob/master/gatk4-GenotypeGVCFs.nf#L248) to fit to my study. The chromosomes names are from a FalconUnzip Genome : Primary_000001F, longueur than usually and with a letter F at the end.
I tried to shorter it with substring(13:15) instead of substring(5) but it doesn't work.
script:
"""
gatk --java-options "-Xmx${params.mem}g -Xms${params.mem}g" \
GatherVcfs \
${vcf.findAll{ it=~/Primary_000\d+/ }.collect().sort{ it.name.tokenize('.')[1].substring(13:15).toInteger()
}.collect{ "--INPUT $it " }.join() } \
--OUTPUT ${params.cohort}.vcf -resume
"""
}
c) Entire program log:
N E X T F L O W ~ version 19.07.0
Launching `test_gather.nf` [crazy_ardinghelli] - revision: f422934a6c
[- ] process > index -
[- ] process > GenomicsDBImport -
[- ] process > GenotypeGVCFs -
[- ] process > GatherVcfs -
executor > slurm (384)
[skipped ] process > index [100%] 1 of 1, stored: 1 ✔
[d4/7882ac] process > GenomicsDBImport (192) [100%] 192 of 192 ✔
[11/01b9c6] process > GenotypeGVCFs (188) [100%] 192 of 192 ✔
[- ] process > GatherVcfs -
Error executing process > 'GatherVcfs'
Caused by:
No signature of method: java.lang.String.substring() is applicable for argument types: (LinkedHashMap) values:
[[13:15]]
Possible solutions: substring(int), substring(int, int), toString(), toString(), toString()
Source block:
"""
gatk --java-options "-Xmx${params.mem}g -Xms${params.mem}g" \
GatherVcfs \
${vcf.findAll{ it=~/Primary_000\d+/ }.collect().sort{ it.name.tokenize('.')[1].substring(13:15).toInteger() }
.collect{ "--INPUT $it " }.join() } \
--OUTPUT ${params.cohort}.vcf -resume
"""
Tip: view the complete command output by changing to the process work dir and entering the command `cat .command.
out`
[PoolSeq-Map] FAILED: crazy_ardinghelli
---------------------------
Pipeline execution summary
---------------------------
Completed at: Thu Dec 08 15:29:45 CET 2022
Duration : 22m 26s
Success : false
workDir : /scratch/mildiou/VCF_all_mildew/fromGvcfToVCF/work
exit status : null
executor > slurm (384)
[skipped ] process > index [100%] 1 of 1, stored: 1 ✔
[d4/7882ac] process > GenomicsDBImport (192) [100%] 192 of 192 ✔
[11/01b9c6] process > GenotypeGVCFs (188) [100%] 192 of 192 ✔
[- ] process > GatherVcfs -
Error executing process > 'GatherVcfs'
Caused by:
No signature of method: java.lang.String.substring() is applicable for argument types: (LinkedHashMap) values:
[[13:15]]
Possible solutions: substring(int), substring(int, int), toString(), toString(), toString()
Source block:
"""
gatk --java-options "-Xmx${params.mem}g -Xms${params.mem}g" \
GatherVcfs \
${vcf.findAll{ it=~/Primary_000\d+/ }.collect().sort{ it.name.tokenize('.')[1].substring(13:15).toInteger() }
.collect{ "--INPUT $it " }.join() } \
--OUTPUT ${params.cohort}.vcf -resume
"""
Please sign in to leave a comment.
0 comments