Error Scaffolding with RagTag
0
1
Entering edit mode
12 days ago
Bipin ▴ 10

We performed high-fidelity (HiFi) whole genome sequencing of two wheat cultivars, Madsen and Pritchett, using the PacBio Revio Circular Consensus Sequencing (CCS) platform. The high-accuracy long reads were first assembled into contigs using Hifiasm. Post-assembly, we conducted quality control and completeness assessments using tools such as BUSCO and Gfastats. For downstream scaffolding, we employed RagTag using the high-quality genome of the wheat cultivar ‘Attraktion’ as the reference assembly.

However, I’m facing challenges with my reference-guided scaffolding project using RagTag and could use your insights. Madsen and Pritchett has nearly identical BUSCO scores (C: 99.7% [S: 2.0%, D: 97.7%], F: 0.2%, M: 0.1%, n: 4896, E: 0.4%). Madsen has 4424 contigs, and Pritchett has 2754, both assembled with Hifiasm. The genomes are about 14Gb big.

I successfully scaffolded Madsen using RagTag, but Pritchett consistently fails with the same SLURM script and pipeline. For Pritchett, the job runs for ~7 days, reports as “completed,” but produces no ragtag.scaffold.fasta. The ragtag.scaffold.asm.paf.log is not complete and gets terminated at same point everytime.

Error says:

Traceback (most recent call last):
File “/home/…/bin/ragtag_scaffold.py”, line 577, in <module>
main()
File “/home/…/bin/ragtag_scaffold.py”, line 420, in main
al.run_aligner()
File “/home/…/BPN/lib/python3.10/site-packages/ragtag_utilities/Aligner.py”, line 128, in run_aligner
run_oe(self.compile_command(), self.out_file, self.out_log)
File “/home/…/lib/python3.10/site-packages/ragtag_utilities/utilities.py”, line 73, in run_oe
raise RuntimeError(“Failed : minimap2 -x asm5 -t 24 … > ragtag.scaffold.asm.paf 2> ragtag.scaffold.asm.paf.log”)

The Slurm Job I gave was:

#SBATCH --partition=abc
#SBATCH --cpus-per-task=24
#SBATCH --mem=1500000
#SBATCH --time=14-00:00:00
ragtag.py scaffold “$REF” “$QUERY” -o “$OUT” -t 24 -u

Troubleshooting Steps: Ran minimap2 manually on Pritchett’s reference (attraktion.fasta) and query (pt2_busco.fa); it generated a 442 MB .paf file in ~21 hours. Came to know that RagTag does not use pregenerated paf file.

Tested RagTag on a Pritchett subset (~409 Mbp, 10 contigs); it succeeded in ~10 hours, placing 9/10 sequences (~402 Mbp).

Someone suggested that with large genomes, minimap2 might struggle due to multi-indexing issues that can slow things down or cause memory overload. They recommended indexing the reference with minimap2 using -I 20G (which should be suitable for wheat) and then passing the prebuilt .mmi index directly to RagTag as if it were a FASTA file. I followed this approach — created the .mmi file and used it in RagTag — but unfortunately, it still didn’t resolve the issue with Pritchett.

Used SLURM settings: bigmem, 24 CPUs, 1.5 TB memory, 14-day limit, BPN environment (RagTag v2.1.0)

scaffold RagTag • 504 views
ADD COMMENT
0
Entering edit mode

Is there anything in ragtag.scaffold.asm.paf.log file?

ADD REPLY
0
Entering edit mode
[M::mm_idx_gen::73.687*1.32] collected minimizers
[M::mm_idx_gen::75.834*1.84] sorted minimizers
[M::main::75.834*1.84] loaded/built the index for 6 target sequence(s)
[M::mm_mapopt_update::80.388*1.79] mid_occ = 1241; max_occ = 8548
[M::mm_idx_stat] kmer size: 19; skip: 19; is_HPC: 0; #seq: 6
[M::mm_idx_stat::82.172*1.77] distinct minimizers: 109678873 (74.65% are singletons); average occurrences: 3.701; average spacing: 9.967
[M::worker_pipeline::15961.110*1.18] mapped 5 sequences
[M::worker_pipeline::19318.028*1.38] mapped 8 sequences
[M::worker_pipeline::24969.699*1.46] mapped 7 sequences
[M::worker_pipeline::27319.017*1.57] mapped 8 sequences
[M::worker_pipeline::31366.827*1.64] mapped 8 sequences
[M::worker_pipeline::43543.850*1.53] mapped 4 sequences
[M::worker_pipeline::51379.656*1.52] mapped 6 sequences
[M::worker_pipeline::63091.079*1.47] mapped 5 sequences
[M::worker_pipeline::65715.460*1.50] mapped 6 sequences
[M::worker_pipeline::68579.036*1.52] mapped 12 sequences
[M::worker_pipeline::75209.265*1.54] mapped 11 sequences
[M::worker_pipeline::78628.053*1.55] mapped 10 sequences
[M::worker_pipeline::81957.562*1.57] mapped 11 sequences
[M::worker_pipeline::87630.204*1.57] mapped 10 sequences
[M::worker_pipeline::91306.783*1.58] mapped 9 sequences
[M::worker_pipeline::94351.910*1.59] mapped 9 sequences
[M::worker_pipeline::96538.625*1.60] mapped 10 sequences
[M::worker_pipeline::104342.905*1.61] mapped 8 sequences
[M::worker_pipeline::106499.844*1.62] mapped 13 sequences
[M::worker_pipeline::109481.325*1.64] mapped 13 sequences
[M::worker_pipeline::111649.516*1.66] mapped 13 sequences
[M::worker_pipeline::113396.605*1.68] mapped 8 sequences
[M::worker_pipeline::122424.467*1.66] mapped 5 sequences
[M::worker_pipeline::124514.507*1.67] mapped 10 sequences
[M::worker_pipeline::125706.390*1.70] mapped 15 sequences
[M::worker_pipeline::126534.348*1.71] mapped 11 sequences
[M::worker_pipeline::144282.035*1.63] mapped 8 sequences
[M::worker_pipeline::144989.983*1.64] mapped 14 sequences
[M::worker_pipeline::152978.989*1.63] mapped 9 sequences
[M::worker_pipeline::154885.563*1.65] mapped 10 sequences
[M::worker_pipeline::161898.138*1.69] mapped 14 sequences
[M::worker_pipeline::163637.354*1.70] mapped 9 sequences
[M::worker_pipeline::169431.256*1.70] mapped 15 sequences
[M::worker_pipeline::170800.764*1.71] mapped 11 sequences
[M::worker_pipeline::173934.813*1.72] mapped 11 sequences
[M::worker_pipeline::175664.147*1.72] mapped 12 sequences
[M::worker_pipeline::176665.011*1.74] mapped 16 sequences
[M::worker_pipeline::180869.508*1.75] mapped 6 sequences
[M::worker_pipeline::182136.038*1.76] mapped 17 sequences
[M::worker_pipeline::182966.886*1.78] mapped 15 sequences
[M::worker_pipeline::183609.789*1.79] mapped 19 sequences
[M::worker_pipeline::185693.705*1.80] mapped 12 sequences
[M::worker_pipeline::186496.724*1.81] mapped 16 sequences
[M::worker_pipeline::187604.926*1.82] mapped 23 sequences
[M::worker_pipeline::190562.614*1.82] mapped 18 sequences
[M::worker_pipeline::191512.369*1.83] mapped 20 sequences
[M::worker_pipeline::208500.195*1.78] mapped 18 sequences
[M::worker_pipeline::222624.802*1.74] mapped 23 sequences
[M::worker_pipeline::223840.517*1.74] mapped 17 sequences
[M::worker_pipeline::224725.442*1.75] mapped 28 sequences
[M::worker_pipeline::225492.587*1.76] mapped 23 sequences
[M::worker_pipeline::227338.643*1.77] mapped 26 sequences
[M::worker_pipeline::228269.596*1.78] mapped 28 sequences
[M::worker_pipeline::229621.488*1.78] mapped 26 sequences
[M::worker_pipeline::230491.864*1.79] mapped 21 sequences
[M::worker_pipeline::231726.648*1.79] mapped 30 sequences
[M::worker_pipeline::237141.035*1.80] mapped 24 sequences
[M::worker_pipeline::239102.704*1.81] mapped 36 sequences
[M::worker_pipeline::241612.186*1.81] mapped 38 sequences
[M::worker_pipeline::244504.806*1.80] mapped 30 sequences
[M::worker_pipeline::246295.556*1.81] mapped 33 sequences
[M::worker_pipeline::248209.167*1.82] mapped 57 sequences
[M::worker_pipeline::253494.192*1.83] mapped 44 sequences
[M::worker_pipeline::256011.032*1.83] mapped 62 sequences
[M::worker_pipeline::256267.007*1.84] mapped 66 sequences
[M::worker_pipeline::256788.800*1.84] mapped 91 sequences
[M::worker_pipeline::258755.809*1.86] mapped 347 sequences
[M::worker_pipeline::259207.259*1.88] mapped 1154 sequences
[M::mm_idx_gen::259283.520*1.88] collected minimizers
[M::mm_idx_gen::259285.186*1.88] sorted minimizers
[M::main::259285.186*1.88] loaded/built the index for 6 target sequence(s)
[M::mm_mapopt_update::259290.119*1.88] mid_occ = 1245; max_occ = 8628
[M::mm_idx_stat] kmer size: 19; skip: 19; is_HPC: 0; #seq: 6
[M::mm_idx_stat::259291.899*1.88] distinct minimizers: 112497004 (74.72% are singletons); average occurrences: 3.729; average spacing: 9.967
[M::worker_pipeline::270541.504*1.85] mapped 5 sequences
[M::worker_pipeline::273546.778*1.85] mapped 8 sequences
[M::worker_pipeline::277578.945*1.85] mapped 7 sequences
[M::worker_pipeline::279940.473*1.86] mapped 8 sequences
[M::worker_pipeline::283920.950*1.87] mapped 8 sequences
[M::worker_pipeline::295779.383*1.85] mapped 4 sequences
[M::worker_pipeline::302012.299*1.84] mapped 6 sequences
[M::worker_pipeline::310622.725*1.83] mapped 5 sequences
[M::worker_pipeline::313252.092*1.83] mapped 6 sequences
[M::worker_pipeline::315942.570*1.83] mapped 12 sequences
[M::worker_pipeline::320748.029*1.84] mapped 11 sequences
[M::worker_pipeline::406661.389*1.85] mapped 9 sequences
[M::worker_pipeline::419978.207*1.85] mapped 12 sequences
[M::worker_pipeline::420973.078*1.86] mapped 16 sequences
[M::worker_pipeline::425088.011*1.86] mapped 6 sequences
[M::worker_pipeline::426110.785*1.87] mapped 17 sequences
[M::worker_pipeline::438547.685*1.88] mapped 18 sequences
[M::worker_pipeline::440294.050*1.89] mapped 20 sequences
[M::worker_pipeline::455351.725*1.86] mapped 18 sequences
[M::worker_pipeline::468984.268*1.84] mapped 23 sequences
[M::worker_pipeline::470572.893*1.84] mapped 17 sequences
[M::worker_pipeline::471342.788*1.85] mapped 28 sequences
[M::worker_pipeline::471816.187*1.85] mapped 23 sequences
[M::worker_pipeline::473336.638*1.86] mapped 26 sequences
[M::worker_pipeline::474333.999*1.86] mapped 28 sequences
[M::worker_pipeline::477248.872*1.86] mapped 26 sequences
[M::worker_pipeline::478211.249*1.87] mapped 21 sequences
[M::worker_pipeline::479451.438*1.87] mapped 30 sequences
[M::worker_pipeline::484123.945*1.87] mapped 24 sequences
[M::worker_pipeline::486232.388*1.87] mapped 36 sequences
[M::worker_pipeline::489504.712*1.87] mapped 38 sequences
[M::worker_pipeline::493106.142*1.87] mapped 30 sequences
[M::worker_pipeline::494580.414*1.87] mapped 33 sequences
[M::worker_pipeline::503061.805*1.87] mapped 57 sequences
[M::worker_pipeline::509244.990*1.87] mapped 44 sequences
[M::worker_pipeline::511617.484*1.88] mapped 62 sequences
[M::worker_pipeline::511874.258*1.88] mapped 66 sequences
[M::worker_pipeline::512454.795*1.88] mapped 91 sequences
[M::worker_pipeline::514326.099*1.89] mapped 347 sequences
[M::worker_pipeline::514811.856*1.89] mapped 1154 sequences
[M::mm_idx_gen::514896.533*1.89] collected minimizers
[M::mm_idx_gen::514898.391*1.89] sorted minimizers
[M::main::514898.391*1.89] loaded/built the index for 7 target sequence(s)
[M::mm_mapopt_update::514903.044*1.89] mid_occ = 1328; max_occ = 9561
[M::mm_idx_stat] kmer size: 19; skip: 19; is_HPC: 0; #seq: 7
[M::mm_idx_stat::514904.887*1.89] distinct minimizers: 121222986 (74.54% are singletons); average occurrences: 3.824; average spacing: 9.967
[M::worker_pipeline::531499.707*1.87] mapped 5 sequences
[M::worker_pipeline::534959.940*1.87] mapped 8 sequences
[M::worker_pipeline::540733.339*1.87] mapped 7 sequences
[M::worker_pipeline::542575.716*1.87] mapped 8 sequences
[M::worker_pipeline::546805.026*1.87] mapped 8 sequences
[M::worker_pipeline::554925.687*1.87] mapped 4 sequences
[M::worker_pipeline::562815.908*1.87] mapped 6 sequences
[M::worker_pipeline::574966.940*1.85] mapped 5 sequences
[M::worker_pipeline::577712.163*1.86] mapped 6 sequences
[M::worker_pipeline::580655.414*1.86] mapped 12 sequences
[M::worker_pipeline::587503.509*1.86] mapped 11 sequences
[M::worker_pipeline::590007.569*1.86] mapped 10 sequences
[M::worker_pipeline::593732.268*1.86] mapped 11 sequences
[M::worker_pipeline::597541.769*1.86] mapped 10 sequences
[M::worker_pipeline::602943.764*1.86] mapped 9 sequences
[M::worker_pipeline::605016.049*1.86] mapped 9 sequences
[M::worker_pipeline::607224.152*1.86] mapped 10 sequences
[M::worker_pipeline::612314.474*1.86] mapped 8 sequences
[M::worker_pipeline::614540.884*1.86] mapped 13 sequences
[M::worker_pipeline::616795.684*1.87] mapped 13 sequences
[M::worker_pipeline::618847.990*1.87] mapped 13 sequences
[M::worker_pipeline::621410.464*1.87] mapped 8 sequences
[M::worker_pipeline::627310.421*1.87] mapped 5 sequences
[M::worker_pipeline::629565.316*1.87] mapped 10 sequences
[M::worker_pipeline::630798.082*1.88] mapped 15 sequences
[M::worker_pipeline::631826.148*1.88] mapped 11 sequences
ADD REPLY
0
Entering edit mode

At least in this file there is no immediate smoking gun here. Does the log for successful madsen run look similar? Have you checked the SLURM logs to see if there was anything there.

ADD REPLY
0
Entering edit mode

There was nothing on SLURM logs, the error mentioned above is in the error file. For Madsen, log file looks similar but is complete. For Pritchett, it stops here everytime

ADD REPLY
0
Entering edit mode

If the run stops at the same point in the pritchett file then you should examine that to see if there is any data corruption. Make sure there are no empty fasta records etc (you may have done this as a part of the assembly QC but just in case).

ADD REPLY
0
Entering edit mode

Troubleshooting Steps: Ran minimap2 manually on Pritchett’s reference (attraktion.fasta) and query (pt2_busco.fa); it generated a 442 MB .paf file in ~21 hours.

Did you use the exact same parameters as RagTag used? I am really curious why minimap crashes only inside the pipeline.

My secondary reflex would be to try to hack ragtag_utilities/Aligner.py, if you can edit the file, so that it can use precomputed paf files. You might have to install your own RagTag though.

ADD REPLY

Login before adding your answer.

Traffic: 3111 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6