Hi there! I’m running nf-core/mag with the follow...
# mag
r
Hi there! I’m running nf-core/mag with the following command:
Copy code
nextflow run nf-core/mag \
  -profile apptainer \
  --input /project2/ckenkel_26/liruiqi/mag_out_project2/samplesheet.csv \
  --outdir /project2/ckenkel_26/liruiqi/mag_out_project2/docker_withhost \
  --spades_fix_cpus 48 \
  --gtdb_db /project2/ckenkel_26/liruiqi/mag_out_project2/gtdb226/release226 \
  -resume
and I encountered a failure in the PROKKA step (error report attached below). The error indicates:
Copy code
Contig ID must <= 37 chars long
Please rename your contigs OR try '--centre X --compliant'
I confirmed that the assembly file exists, and some example contig names look like:
Copy code
NODE_13554_length_2509_cov_1572.037897
NODE_24519_length_1785_cov_1034.275145
It looks like some contig IDs exceed Prokka’s 37-character limit due to the
_length_..._cov_...
suffix. From what I’ve read, one possible fix would be to run with:
Copy code
--prokka_with_compliance true
--prokka_compliance_centre X
However, I’m hesitant to use compliance mode because it renames contigs (e.g., to something like
PREFIX_00001
), which would make it harder to trace annotations back to the original contig names later. Since I cannot modify the pipeline myself, would you recommend enabling Prokka compliance mode, or would it be better to add a contig name cleaning step upstream (for example, stripping
_length_..._cov_...
while preserving the NODE ID)? What would be the most robust and reproducible fix in this case? Thank you!
j
There isn't really a way around this at the moment 😞, it's a hard limit by Prokka 😕. You could also just skip it and manually annotate the bins outside the pipeline, as we don't use the output of PROKKA foor anything else downstream in the pipeline We want to replace Prokka with Bakta which should be more performant (for Bacteria) but have not had a chance yet sadly
r
Cool thank you!