amkozlov / raxml-ng

RAxML Next Generation: faster, easier-to-use and more flexible
GNU Affero General Public License v3.0
374 stars 62 forks source link

BalancerStat Assertion failed? #166

Open danieljrichard opened 8 months ago

danieljrichard commented 8 months ago

Hello, I'm trying to use raxml-ng (as part of the 'cellphy' wrapper) to generate lineage trees. However, I'm running into the following issue when trying to run the program (from a vcf.gz file):

Command: /home/daniel/cellphy/./bin/raxml-ng-cellphy-linux --search --msa cellSNP.cells.MICROGLIA.INFORMATIVE.vcf.gz --model GT10+FO --msa-format vcf --prefix cellSNP.cells.MICROGLIA.INFORMATIVE.vcf.gz --tree pars{1} --force perf_threads --threads 20

[00:00:00] Loaded alignment with 266 taxa and 18 sites

Alignment comprises 1 partitions and 18 sites

Partition 0: noname Model: GT10+FO Alignment sites: 18 Gaps: 75.46 % Invariant sites: 38.89 %

[00:00:00] Generating 1 parsimony starting tree(s) with 266 taxa raxml-ng-cellphy-linux: /home/alex/hits/raxml-ng/src/loadbalance/BenoitLoadBalancer.cpp:208: void kassian_phase2(BalancerState&): Assertion `s.remaining == 0' failed.

I also get this message when I use 18 sites, but 9958 samples (not 266). Is there some lower bound for the size of the alignment that I'm ignorant of? Or any way around this perhaps?

amkozlov commented 8 months ago

Indeed, you have too few sites in your alignment.

Technically, you can run the analysis with single thread by using -t 1 option for cellphy or --threads 1 for raxml-ng.

However, the quality of tree for 266 samples would be questionable. With 9958 samples, it's not even worth trying. There is simply not enough signal in 18 sites to resolve all the branches.