[Error Report] terminate called after throwing an instance of 'std::length_error' what(): basic_string::_M_create
865699871 opened this issue · 1 comments
We used stringdecomposer to transform DNA sequence into block. Most sequence can work well, but one of DNA sequence failed.
The error report is here.
The length of DNA sequence is 675,518bp and the templet is 450bp. Why this error occur?
Prepared reads
100%: Aligned chr1:250789205-251464723
terminate called after throwing an instance of 'std::length_error'
what(): basic_string::_M_create
Traceback (most recent call last):
File "/home/soft/stringdecomposer-master/bin/stringdecomposer", line 10, in
sys.exit(main())
File "/home/soft/stringdecomposer-master/bin/../stringdecomposer/main.py", line 228, in main
raw_decomposition = run(args.sequences, args.monomers, args.threads, args.scoring, args.batch_size, raw_decomp_fn, args.ed_thr, logger)
File "/home/soft/stringdecomposer-master/bin/../stringdecomposer/main.py", line 194, in run
subprocess.run([SD_BIN, sequences, monomers, num_threads, batch_size, ins, dels, mm, match, str(ed_thr)], stdout = f, check = True)
File "/home/shgao/.conda/envs/SCAT/lib/python3.9/subprocess.py", line 528, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/home/soft/stringdecomposer-master/stringdecomposer/build/bin/dp', './chr1_250789205_251464723.fa', './chr1_251090002_251199773_450.fa', '1', '5000', '-1', '-1', '-1', '1', '-1']' died with <Signals.SIGABRT: 6>.
Hi,
Thank you for using StringDecomposer!
Is it possible for you to provide dna sequence and template string? If yes, you can send it or link to it to me via email tanunia@gmail.com.
Without seeing input data itself, I can only say that StringDecomposer tuned to work with human monomeric sequences that tend to be shorter (~170bp). Chunks, that StringDecomposer processes, overlap by 500bp (see code line). These overlaps should be more than twice longer than expected monomer sequence, so for monomer sequence of length 450bp overlap size should be at least 900bp (instead of 500bp). Unfortunately, now this constant can be modified only in code.