mozack/abra2

max_paths_from_root

warthmann opened this issue · 3 comments

Hello,
I have abra2 integrated in a snakemake workflow for variant calling and it usually does a great job. With my current dataset on Maniok esculenta, however, Abra2 exits with error(s). Attached a screenshot shows tail -n 15 of 3 log files. Its a bunch of bam files in 3 different sample-sets mapped against the same reference genome. "resistant", "susceptible", and "all_samples", where "all_samples" is a combination of the other two

"susceptible": abra2 finished and exited cleanly

"resistant": abra2 exits with

TOO_MANY_PATHS_FROM_ROOT: NC_035164.1_3550000_3550400 - ATTCTAATGCCTATTCT
TOO_MANY_PATHS_FROM_ROOT: NC_035164.1_3550000_3550400 - CTTATCGGCCATCAAAAGCAT

all_samples: abra2 exits with
INFO Thu Aug 12 21:27:26 CEST 2021 PROCESS_REGION_MSECS: NC_035170.1_25785600_25786000 478 26 24 0
java: src/main/c/sparsehash/internal/densehashtable.h:930: std::pair<google::dense_hashtable_iterator<V, K, HF, ExK, SetK, EqK, A>, bool> google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::insert_noresize(google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::const_reference) [with Value = int; Key = int; HashFcn = std::tr1::hash; ExtractKey = google::dense_hash_set<int, std::tr1::hash, eqint>::Identity; SetKey = google::dense_hash_set<int, std::tr1::hash, eqint>::SetKey; EqualKey = eqint; Alloc = google::libc_allocator_with_realloc; google::dense_hashtable<Value, Key, HashFcn, ExtractKey, SetKey, EqualKey, Alloc>::const_reference = const int&]: Assertion `(!settings.use_empty() || !equals(get_key(obj), get_key(val_info.emptyval))) && "Inserting the empty key"' failed.


Any help would be greatly appreciated. Ie., where can I set max_path_from_root and what is the reason for the error with sample-set "all-files"? I realise that I can skip particular regions, however, I am not sure I know what reason causes the error in "all_samples"

All this is running on an Ubuntu box with 40 cores and 188 GB RAM. I am happy to provide additional information if needed.

thanks a lot for your time
Norman

Screen Shot 2021-08-23 at 14 38 07

kdm9 commented

Hi all,

Also having this issue. It seems as though this has more to do with the sparsehash assertion error about "Inserting an empty key" more than the transient error/warning about too many paths from root.

Unfortunately that's where my debugging abilities end on this one, I'm simply too unfamiliar with the codebase to dig further. @mozack (or is it @lmose), if you have any pointers I (and @warthmann too I'm sure) would appreciate any guidance.

Best,
Kevin

Hi, if anyone can provide a smallish BAM file that can be used to reproduce the problem, I will take a look.