hildebra / lotus2

Amplicon sequencing pipelines suitable for SSU (16S, 18S), LSU (23S, 28S) and ITS.
http://lotus2.earlham.ac.uk/
GNU General Public License v3.0
52 stars 17 forks source link

pigz db build #59

Closed uloeber closed 5 months ago

uloeber commented 5 months ago

First of all, happy new year! I reinstalled lotus2 after trying to use the update function in lotus, which was first not successful and then deleted the autoInstall.pl during that process to work with KSGP. However, after reinstalling, I get the following error running lotus which seems to be related to pigz. Anny suggestions how to handle this? pigz: abort: missing parameter after -p

sh: line 1: 108829 Aborted                lotus2/bin/lambda3 searchn -t 40 --percent-identity 75 --num-matches 200 --e-value 1e-8 -q Lotus2_KSGP_Alex120124/OTU.fa -i lotus2//DB//KSGP_v1.0.fasta.lba.gz -o Lotus2_KSGP/tmpFiles//tax.m8 --output-columns 'qseqid sseqid pident length mismatch gapopen qstart qend sstart send qlen' >> Lotus2_KSGP/LotuSLogS/LotuS_progout.log 2>&1
 CMD failed: lotus2//bin//lambda3 searchn -t 40 --percent-identity 75 --num-matches 200 --e-value 1e-8 -q Lotus2_KSGP/OTU.fa -i lotus2//DB//KSGP_v1.0.fasta.lba.gz -o Lotus2_KSGP/tmpFiles//tax.m8 --output-columns 'qseqid sseqid pident length mismatch gapopen qstart qend sstart send qlen' 

same for SLV:

Building LAMBDA index anew forlotus2//DB//SLV_138.1_SSU.fasta (this only happens the first time you use this ref DB, it may take several hours to build)..

 CMD failed: 
pigz -p -1  lotus2//DB//SLV_138.1_SSU.fasta.lba 
see Lotus2_SLV_Alex120124/LotuSLogS/LotuS_progout.log for error log
(base) [uloeber]$ tail Lotus2_SLV_Alex120124/LotuSLogS/LotuS_progout.log
[M::mm_idx_stat] kmer size: 21; skip: 11; is_hpc: 0; #seq: 1
[M::mm_idx_stat::0.010*4.92] distinct minimizers: 900 (100.00% are singletons); average occurrences: 1.000; average spacing: 5.984
[M::worker_pipeline::0.016*4.51] mapped 526 sequences
[M::main] Version: 2.17-r941
[M::main] CMD:lotus2//bin//minimap2-2.17_x64-linux/minimap2 -x sr --sr -u both --secondary=no -N 30 -c -t 40 -o Lotus2_SLV_Alex120124/tmpFiles//otu_seeds.fna.phiX.0.cont_hit.paf lotus2//DB//phiX.fasta Lotus2_SLV_Alex120124/tmpFiles//otu_seeds.fna
[M::main] Real time: 0.017 sec; CPU: 0.074 sec; Peak RSS: 0.003 GB
Loading Subject Sequences and Ids... done.
Generating Index... done.
Writing Index to disk... done.
pigz: abort: missing parameter after -p

Thanks in advance! Cheers, Ulrike

hildebra commented 5 months ago

Hey Ulrike, the problem is that the thread number has not been specified. I'll add a fix soon for lotus2, but for now explicitly stating "lotus2 .. -t 10" (e.g. 10 cores ) should solve the issue. best, Falk

uloeber commented 5 months ago

Hey Falk, thanks for the quick response. Now I get: [M::main] Real time: 0.016 sec; CPU: 0.026 sec; Peak RSS: 0.003 GB terminate called after throwing an instance of 'sharg::validation_error' what(): Validation failed for option -i/--index: The file "lotus2//DB//KSGP_v1.0.fasta.lba.gz" does not exist! Yours sincerely, Ulrike

hildebra commented 5 months ago

Hey Ulrike, I suspect the DB.gz file was created empty and then lambda is throwing an error. can you delete the above .gz file? I also pushed an update to github just now that should address the issue, can you give it a try? best, Falk

uloeber commented 5 months ago

It works like a charm! Thank you Best, Ulrike

hildebra commented 5 months ago

Great, thanks for the bug report Ulrike!