nf-core / dualrnaseq

Analysis of Dual RNA-seq data - an experimental method for interrogating host-pathogen interactions through simultaneous RNA-seq.
https://nf-co.re/dualrnaseq
MIT License
18 stars 30 forks source link

Workflow does not start due to error #23

Closed rcostan00b closed 3 years ago

rcostan00b commented 3 years ago

Check Documentation

I have checked the following places for your error:

Description of the bug

Steps to reproduce

Steps to reproduce the behaviour:

  1. Command line: <!-- [./nextflow run nf-core/dualrnaseq -r 1.0.0 -profile docker --input '/mnt/f/tes/*.fastq.gz' --single_end = true --fasta_host "/mnt/c/Linux/references/GRCh38_latest.fa" --fasta_pathogen "/mnt/c/Linux/references/NC_045512_2.fasta" --gff_host /mnt/c/Linux/references/GRCh38_latest_genomic.gff --gff_pathogen "/mnt/c/Linux/references/NC_045512_2_genomic.gff" --run_star --outdir "/mnt/c/Linux/tesr"] -->
  2. See error: <!-- [N E X T F L O W ~ version 21.04.2 Launching nf-core/dualrnaseq [voluminous_lovelace] - revision: d8dcd8acfa [1.0.0] Unknown config attribute params.genomes_ignore -- check config file: /home/rui/.nextflow/assets/nf-core/dualrnaseq/nextflow.config] -->

Log files

Jul-20 15:28:18.394 [main] DEBUG nextflow.cli.Launcher - $> nextflow run nf-core/dualrnaseq -r 1.0.0 -profile docker --input '/mnt/f/tes/.fastq.gz' --single_end = true --fasta_host /mnt/c/Linux/references/GRCh38_latest.fa --fasta_pathogen /mnt/c/Linux/references/NC_045512_2.fasta --gff_host /mnt/c/Linux/references/GRCh38_latest_genomic.gff --gff_pathogen /mnt/c/Linux/references/NC_045512_2_genomic.gff --run_star --outdir /mnt/c/Linux/tesr Jul-20 15:28:18.474 [main] INFO nextflow.cli.CmdRun - N E X T F L O W ~ version 21.04.2 Jul-20 15:28:19.193 [main] DEBUG nextflow.scm.AssetManager - Git config: /home/rui/.nextflow/assets/nf-core/dualrnaseq/.git/config; branch: master; remote: origin; url: https://github.com/nf-core/dualrnaseq.git Jul-20 15:28:19.211 [main] DEBUG nextflow.scm.AssetManager - Git config: /home/rui/.nextflow/assets/nf-core/dualrnaseq/.git/config; branch: master; remote: origin; url: https://github.com/nf-core/dualrnaseq.git Jul-20 15:28:19.346 [main] INFO nextflow.cli.CmdRun - Launching nf-core/dualrnaseq [voluminous_lovelace] - revision: d8dcd8acfa [1.0.0] Jul-20 15:28:19.761 [main] DEBUG nextflow.config.ConfigBuilder - Found config base: /home/rui/.nextflow/assets/nf-core/dualrnaseq/nextflow.config Jul-20 15:28:19.762 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /home/rui/.nextflow/assets/nf-core/dualrnaseq/nextflow.config Jul-20 15:28:19.768 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: docker Jul-20 15:28:19.979 [main] INFO org.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] Jul-20 15:28:19.980 [main] INFO org.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] Jul-20 15:28:19.983 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.4.1 in 'deployment' mode Jul-20 15:28:20.143 [main] DEBUG nextflow.config.ConfigBuilder - In the following config snippet the attribute params.genomes_ignore is empty: genome_host=false genome_pathogen=false input='/mnt/f/tes/.fastq.gz' single_end='=' outdir='/mnt/c/Linux/tesr' publish_dir_mode='copy' run_cutadapt=false a='AGATCGGAAGAGCACACGTCTGAACTCCAGTCA' A='AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGT' quality_cutoff='10' cutadapt_params='' run_bbduk=false minlen='18' qtrim='r' trimq='10' ktrim='r' k='17' mink='11' hdist='1' adapters=/home/rui/.nextflow/assets/nf-core/dualrnaseq/assets/adapters.fa bbduk_params='' skip_fastqc=false fastqc_params='' libtype='' generate_salmon_uniq_ambig=false incompatPrior=0.0 gene_attribute_gff_to_create_transcriptome_host='transcript_id' gene_feature_gff_to_create_transcriptome_host=['exon', 'tRNA'] gene_attribute_gff_to_create_transcriptome_pathogen='locus_tag' gene_feature_gff_to_create_transcriptome_pathogen=['gene', 'sRNA', 'tRNA', 'rRNA'] read_transcriptome_fasta_host_from_file=false read_transcriptome_fasta_pathogen_from_file=false run_salmon_selective_alignment=false kmer_length=21 writeUnmappedNames=false softclipOverhangs=false dumpEq=false writeMappings=false keepDuplicates=false salmon_sa_params_index='' salmon_sa_params_mapping='' run_star=true outSAMunmapped='Within' outSAMattributes='Standard' outFilterMultimapNmax=999 outFilterType='BySJout' alignSJoverhangMin=8 alignSJDBoverhangMin=1 outFilterMismatchNmax=999 outFilterMismatchNoverReadLmax=1 alignIntronMin=20 alignIntronMax=1000000 alignMatesGapMax=1000000 limitBAMsortRAM=0 winAnchorMultimapNmax=999 sjdbOverhang=100 outWigType='None' outWigStrand='Stranded' star_index_params='' star_alignment_params='' quantTranscriptomeBan='Singleend' star_salmon_index_params='' star_salmon_alignment_params='' run_salmon_alignment_based_mode=false salmon_alignment_based_params='' run_htseq_uniquely_mapped=false stranded='yes' max_reads_in_buffer=30000000 minaqual=10 gene_feature_gff_to_quantify_host=['exon', 'tRNA'] gene_feature_gff_to_quantify_pathogen=['gene', 'sRNA', 'tRNA', 'rRNA'] host_gff_attribute='gene_id' pathogen_gff_attribute='locus_tag' htseq_params='' mapping_statistics=false rna_classes_to_replace_host=/home/rui/.nextflow/assets/nf-core/dualrnaseq/data/RNA_classes_to_replace.tsv custom_config_version='master' fasta_host='/mnt/c/Linux/references/GRCh38_latest.fa' fasta_pathogen='/mnt/c/Linux/references/NC_045512_2.fasta' gff_host='/mnt/c/Linux/references/GRCh38_latest_genomic.gff' gff_pathogen='/mnt/c/Linux/references/NC_045512_2_genomic.gff' custom_config_base=https://raw.githubusercontent.com/nf-core/configs/master hostnames=['binac':['.binac.uni-tuebingen.de'], 'cbe':['.cbe.vbc.ac.at'], 'cfc':['.hpc.uni-tuebingen.de'], 'crick':['.thecrick.org'], 'icr_davros':['.davros.compute.estate'], 'imperial':['.hpc.ic.ac.uk'], 'imperial_mb':['.hpc.ic.ac.uk'], 'genotoul':['.genologin1.toulouse.inra.fr', '.genologin2.toulouse.inra.fr'], 'genouest':['.genouest.org'], 'uppmax':['.uppmax.uu.se'], 'utd_ganymede':['ganymede.utdallas.edu'], 'utd_sysbio':['sysbio.utdallas.edu']] config_profile_description=false config_profile_contact=false config_profile_url=false name=false multiqc_config=false email=false email_on_fail=false max_multiqc_email_size=25 MB plaintext_email=false monochrome_logs=false help=false tracedir=/mnt/c/Linux/tesr/pipeline_info max_memory=128 GB max_cpus=16 max_time=10d genomes { GRCh38 { fasta_host='path_to_references/human/GRCh38.genome.fa' gff_host='path_to_references/human/GRCh38.annotation.gff3' gff_host_tRNA='path_to_references/human/GRCh38.gencode.tRNAs.gff3' transcriptome_host='path_to_references/human/GRCh38.gencode.transcripts.fa' } SL1344 { fasta_pathogen='path_to_references/Salmonella/SL1344.fasta' gff_pathogen='path_to_references/Salmonella/SL1344.gff' } My_Bacteria { fasta_pathogen='path_to_references/My_Bacteria/My_Bacteria.fasta' gff_pathogen='path_to_references/My_Bacteria/My_Bacteria.gff' } }

Jul-20 15:28:20.147 [main] ERROR nextflow.cli.Launcher - Unknown config attribute params.genomes_ignore -- check config file: /home/rui/.nextflow/assets/nf-core/dualrnaseq/nextflow.config nextflow.exception.ConfigParseException: Unknown config attribute params.genomes_ignore -- check config file: /home/rui/.nextflow/assets/nf-core/dualrnaseq/nextflow.config at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:72) at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:105) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:59) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:263) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:277) at nextflow.config.ConfigBuilder.validate(ConfigBuilder.groovy:444) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:193) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:61) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:212) at nextflow.config.ConfigBuilder.validate(ConfigBuilder.groovy:451) at nextflow.config.ConfigBuilder.validate(ConfigBuilder.groovy:431) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:193) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:61) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:194) at nextflow.config.ConfigBuilder.merge0(ConfigBuilder.groovy:405) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:193) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:61) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:203) at nextflow.config.ConfigBuilder.buildConfig0(ConfigBuilder.groovy:354) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:193) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:61) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:194) at nextflow.config.ConfigBuilder.buildGivenFiles(ConfigBuilder.groovy:312) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:193) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:61) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:185) at nextflow.config.ConfigBuilder.buildConfigObject(ConfigBuilder.groovy:729) at nextflow.config.ConfigBuilder.build(ConfigBuilder.groovy:742) at nextflow.cli.CmdRun.run(CmdRun.groovy:272) at nextflow.cli.Launcher.run(Launcher.groovy:475) at nextflow.cli.Launcher.main(Launcher.groovy:657)

System

Nextflow Installation

Container engine

Additional context

reganhayward commented 3 years ago

Hi and thanks for the detailed logs - that initially makes my job much easier to start with!

The first thing I see is the single end param, this only needs to be passed, it doesn't need a True or False option. so replace --single_end = true with --single_end We've had a fair bit of feedback from users about different params, some which require True/False and some which don't - so we are making changes to make this much clearer.

The other thing you will need to pass is the flag --genomes_ignore as outlined from this error message: params.genomes_ignore is empty:. This flag is a little counterintuitive and is being updated in the next version.

If you are interested, here's the description for that flag https://github.com/nf-core/dualrnaseq/blob/3e35f4722e1889306ccb4578a15a606b1d67e05f/nextflow.config#L189-L191

Hopefully this helps!!

rcostan00b commented 3 years ago

Hi reganhayward,

Thank you so much for the help, I'll implement your advised changes at the office tomorrow morning and will report back.

Again, thank you!

rcostan00b commented 3 years ago

Hi and thanks for the detailed logs - that initially makes my job much easier to start with!

The first thing I see is the single end param, this only needs to be passed, it doesn't need a True or False option. so replace --single_end = true with --single_end We've had a fair bit of feedback from users about different params, some which require True/False and some which don't - so we are making changes to make this much clearer.

The other thing you will need to pass is the flag --genomes_ignore as outlined from this error message: params.genomes_ignore is empty:. This flag is a little counterintuitive and is being updated in the next version.

If you are interested, here's the description for that flag

https://github.com/nf-core/dualrnaseq/blob/3e35f4722e1889306ccb4578a15a606b1d67e05f/nextflow.config#L189-L191

Hopefully this helps!!

Hi again, I ran the following inpu incorporating your suggestions and it produced two warnings:

./nextflow run nf-core/dualrnaseq -r 1.0.0 -profile docker --input "/mnt/f/tes/*.fastq.gz" --single_end --genomes_ignore --fasta_host "/mnt/c/Linux/references/GRCh38_latest.fa" --fasta_pathogen "/mnt/c/Linux/references/NC_045512_2.fasta" --gff_host "/mnt/c/Linux/references/GRCh38_latest_genomic.gff" --gff_pathogen "/mnt/c/Linux/references/NC_045512_2_genomic.gff" --run_star --outdir "/mnt/c/Linux/tesr"

output

.nextflow.log

I appreciate your help.

Cheers

R

reganhayward commented 3 years ago

Again, thanks for the log - I can see a couple more issues:

For the host GFF, you will need to use --gff_host_genome which we are removing the _genome part in the next version as its not intuitive. The full parameter list can be viewed here if you are interested https://nf-co.re/launch?id=1627332901_ca0ea0212f97

A second issue is your pathogen reference, which from the NCxxx number looks as though its a virus? if it is, unfortunately the pipeline only works with bacteria. If we get enough interest, we will add a virus option within the pipeline, which shouldnt be too hard to do.

rcostan00b commented 3 years ago

Hi, I appreciate you taking the time to go through my issues.

Sadly you are right. My pathogen is a virus. I'll then look into concatenating the viral genome and annotations with the hG38 and run the classical rnaseq.

Again, sorry to have wasted your time. I'll keep an eye out for future versions past 1.0.0 that will include viral pathogens.

Thank you for your time!

Cheers

R

reganhayward commented 3 years ago

No problem - sorry we can't help you this time around - but do look out for future versions!!