nf-core / sarek

Analysis pipeline to detect germline or somatic variants (pre-processing, variant calling and annotation) from WGS / targeted sequencing
https://nf-co.re/sarek
MIT License
404 stars 410 forks source link

Avoid misleading error messages concerning sample-sheets #1629

Open asp8200 opened 2 months ago

asp8200 commented 2 months ago

Description of the bug

This bug has been around for a while now. When Sarek encounters an error is will often issue the correct error message along with a couple of wrong error messages. The wrong error messages are related to the sample-sheets.

Here is an example where Sarek v3.4.3 was given an incorrect path to the VEP-cache, and Sarek gave the following error msg:

The sample-sheet only contains tumor-samples, but the following tools, which were requested by the option "tools", expect at least one normal-sample : ascat
The sample-sheet only contains normal-samples, but the following tools, which were requested with "--tools", expect at least one tumor-sample : ascat, controlfreec, mutect2
Path provided with VEP cache is invalid.
Make sure there is a directory named homo_sapiens/111_GRCh38 in /ngc/shared/nf_tools/references/vep_cache./nPlease refer to https://nf-co.re/sarek/docs/usage/#how-to-customise-snpeff-and-vep-annotation for more information.

The error messages concerning the sample-sheet are wrong and shouldn't be issued in this scenario. (The error message concerning the VEP-cache is fine.)

The error isn't caused by nf-validation, but by code in Sarek:

https://github.com/nf-core/sarek/blob/e92242ead3dff8e24e13adbbd81bfbc0b6862e4c/subworkflows/local/samplesheet_to_channel/main.nf#L162

https://github.com/nf-core/sarek/blob/e92242ead3dff8e24e13adbbd81bfbc0b6862e4c/subworkflows/local/annotation_cache_initialisation/main.nf#L50

Command used and terminal output

No response

Relevant files

No response

System information

No response

dansteiert commented 2 months ago

I faced a similar issue. When looking into the log, I found that something else caused this error message. (Use of a custom genome and missing of additional inputs).

But the error message is misleading and lead me to double and tripple check my sample sheets

asp8200 commented 2 months ago

I faced a similar issue. When looking into the log, I found that something else caused this error message. (Use of a custom genome and missing of additional inputs).

But the error message is misleading and lead me to double and tripple check my sample sheets

Thanks for reporting that, @dansteiert

TILccit commented 7 hours ago

I am getting the same error: The sample-sheet only contains tumor-samples, but the following tools, which were requested by the option "tools", expect at least one normal-sample : ascat

Any possible solution?

asp8200 commented 6 hours ago

I am getting the same error: The sample-sheet only contains tumor-samples, but the following tools, which were requested by the option "tools", expect at least one normal-sample : ascat

Any possible solution?

Is there another error message besides the one related to the sample-sheet? The error message might not be printed to stdout. I would also check .nextflow.log.

TILccit commented 6 hours ago

No error message. My job terminates with the following

WARN: The default Panel-of-Normals provided by GATK is used for Mutect2. It is highly recommended to generate one from normal samples that are technical similar to the tumor ones. For more information: https://gatk.broadinstitute.org/hc/en-us/articles/360035890631-Panel-of-Normals-PON- [- ] NFCORE_SAREK:PREPARE_GENOME:BWAMEM1_INDEX - [- ] NFCORE_SAREK:PREPARE_GENOME:BWAMEM2_INDEX - [- ] NFCORE_SAREK:PREPARE_GENOME:DRAGMAP_HASHTABLE - [- ] NFCORE_SAREK:PREPARE_GENOME:GATK4_CREATESEQUENCEDICTIONARY - [- ] NFCORE_SAREK:PREPARE_GENOME:MSISENSORPRO_SCAN - [- ] NFCORE_SAREK:PREPARE_GENOME:SAMTOOLS_FAIDX - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_BCFTOOLS_ANNOTATIONS - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_DBSNP - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_GERMLINE_RESOURCE - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_KNOWN_SNPS - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_KNOWN_INDELS - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_PON - [- ] NFCORE_SAREK:PREPARE_GENOME:UNZIP_ALLELES - [- ] NFCORE_SAREK:PREPARE_GENOME:UNZIP_LOCI - [- ] NFCORE_SAREK:PREPARE_GENOME:UNZIP_GC - [- ] NFCORE_SAREK:PREPARE_GENOME:UNZIP_RT - The sample-sheet only contains normal-samples, but the following tools, which were requested with "--tools", expect at least one tumor-sample : ascat, controlfreec, mutect2 Missing process or function Channel.empty([[]])

-- Check script '/home/sarek/.nextflow/assets/nf-core/sarek/main.nf' at line: 342 or see '/mnt/f/ARIA/sarek_output/log/M14TIL121.log' file for more details The sample-sheet only contains tumor-samples, but the following tools, which were requested by the option "tools", expect at least one normal-sample : ascat

asp8200 commented 6 hours ago

No error message. My job terminates with the following

WARN: The default Panel-of-Normals provided by GATK is used for Mutect2. It is highly recommended to generate one from normal samples that are technical similar to the tumor ones. For more information: https://gatk.broadinstitute.org/hc/en-us/articles/360035890631-Panel-of-Normals-PON- [- ] NFCORE_SAREK:PREPARE_GENOME:BWAMEM1_INDEX - [- ] NFCORE_SAREK:PREPARE_GENOME:BWAMEM2_INDEX - [- ] NFCORE_SAREK:PREPARE_GENOME:DRAGMAP_HASHTABLE - [- ] NFCORE_SAREK:PREPARE_GENOME:GATK4_CREATESEQUENCEDICTIONARY - [- ] NFCORE_SAREK:PREPARE_GENOME:MSISENSORPRO_SCAN - [- ] NFCORE_SAREK:PREPARE_GENOME:SAMTOOLS_FAIDX - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_BCFTOOLS_ANNOTATIONS - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_DBSNP - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_GERMLINE_RESOURCE - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_KNOWN_SNPS - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_KNOWN_INDELS - [- ] NFCORE_SAREK:PREPARE_GENOME:TABIX_PON - [- ] NFCORE_SAREK:PREPARE_GENOME:UNZIP_ALLELES - [- ] NFCORE_SAREK:PREPARE_GENOME:UNZIP_LOCI - [- ] NFCORE_SAREK:PREPARE_GENOME:UNZIP_GC - [- ] NFCORE_SAREK:PREPARE_GENOME:UNZIP_RT - The sample-sheet only contains normal-samples, but the following tools, which were requested with "--tools", expect at least one tumor-sample : ascat, controlfreec, mutect2 Missing process or function Channel.empty([[]])

-- Check script '/home/sarek/.nextflow/assets/nf-core/sarek/main.nf' at line: 342 or see '/mnt/f/ARIA/sarek_output/log/M14TIL121.log' file for more details The sample-sheet only contains tumor-samples, but the following tools, which were requested by the option "tools", expect at least one normal-sample : ascat

Which version of Nextflow are you using? 24.07.0-edge or later? If so, you can try to revert to 24.04.4like this:

NXF_VER=24.04.4 nextflow run … <your parameters here>

If your running local code, then you can perhaps also try the fix mentioned here.

TILccit commented 6 hours ago

I was using nextflow 24.10.0 but now running again with NXF_VER=24.04.4 nextflow run … and seems working...

Thank you..

Plus 81 more processes waiting for tasks… [- ] NFCORE_SAREK:SAREK:CONVERT_FASTQ_INPUT:SAMTOOLS_VIEW_MAP_MAP - [- ] NFCORE_SAREK:SAREK:CONVERT_FASTQ_INPUT:SAMTOOLS_VIEW_UNMAP_UNMAP - [- ] NFCORE_SAREK:SAREK:CONVERT_FASTQ_INPUT:SAMTOOLS_VIEW_UNMAP_MAP - [- ] NFCORE_SAREK:SAREK:CONVERT_FASTQ_INPUT:SAMTOOLS_VIEW_MAP_UNMAP - [a2/a8920c] NFCORE_SAREK:SAREK:FASTQC (121_healthy-1) [ 0%] 0 of 2 [- ] NFCORE_SAREK:SAREK:FASTP [ 0%] 0 of 2 Plus 81 more processes waiting for tasks…