nextstrain / ncov

Nextstrain build for novel coronavirus SARS-CoV-2
https://nextstrain.org/ncov
MIT License
1.35k stars 402 forks source link

after skip_diagnostics: true modification. next strain fails #1035

Open Valentin-Bio-zz opened 1 year ago

Valentin-Bio-zz commented 1 year ago

Hello, I'm trying to run a next strain analysis using gisaid data. (export augur needed data from gisaid). After exporting the data (fasta and metadata files). I made my own configuration file (attaching here in txt format but it is in iml on my computer). my_config.txt

The analysis is removing all my samples (7 samples actually) because they fails on the diagnostic

joverlee521 commented 1 year ago

I'm transferring this issue to the nextstrain/ncov repository because the skip_diagnostics configuration parameter is specific to the ncov workflow.

joverlee521 commented 1 year ago

Hi @Valentin-Bio,

I did a dry run of the build using your config with:

nextstrain build . --configfile my-ncov-analyses/my_config.yaml --dry-run

I do not see the diagnostic rule in the list of jobs, which means your config file should be properly set to skip the diagnostic rule.

Can you provide some more details to help us diagnose the issue?

  1. Can you share the command you are using to run your build?
  2. Could your samples be filtered out due to the other filter params you have set in your config file? Can you check the results/everything/filtered_log.tsv file to confirm the filter reasons?
huddlej commented 1 year ago

@Valentin-Bio Another possibility is that Snakemake is pulling in older intermediate files into your analysis that were generated before you updated the skip_diagnostics setting in the config file. Older versions of Snakemake won't re-run the workflow based on parameter changes like this, so your workflow would appear to be running as you expected and still produce the wrong output.

One way around this issue is to force the workflow to run from scratch by adding the --forceall argument to the snakemake or nextstrain build . command you're using.