-
-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BUG: When including duplicate taxon in constraint tree, misleading/incorrect error thrown #102
Comments
Ok, I've figured it out 🎉 The root cause is me - but the error message is misleading/false. I included one sample twice in the constraint tree: When removing the duplicate element from the constraint tree, it all works. So what needs to be changed is that when parsing the constraint tree you throw an |
Notably, the error is thrown not even naming which sequence is duplicate - misleading the user. I just ran into this again - as I'm hand-writing a pretty large |
I'll look into this, thanks for your patience. Btw IQ-TREE back then didn't support Mac ARM (it does now with v2.3.X). So how could you run IQ-TREE back then? |
Thanks for your work on IQtree, my many issue reports should be seen as testament to the importance of IQtree!
|
I figured out what the root cause was. The issue is with the error message not with the rest of the software - but I'm leaving the issue as is. See the first command for an explanation of what I found
I use constraint trees to make the Nextclade reference trees, see e.g. https://nextstrain.org/staging/nextclade/sars-cov-2
Without constraint trees, the large amount of homoplasy causes the tree to be wrong. This is an ideal use case for constraint trees.
Things have been working well - until today.
When I increased the size of the constraint tree to now 83 sequences, suddenly I get errors that are wrong - in the sense that they claim something that is not true.
This is the command I run with data attached:
iqtree-2.2.0.7-MacOSX/bin/iqtree2 -s masked_masked-delim.fasta.txt -m GTR -g constraint-2.nwk.txt -czb -redo
masked_masked-delim.fasta.txt
constraint-2.nwk.txt
When I run iqtree2 without constraint tree, all works well:
iqtree-2.2.0.7-MacOSX/bin/iqtree2 -s masked_masked-delim.fasta.txt -m GTR -czb -redo
When I use my previous constraint tree - all works well:
iqtree-2.2.0.7-MacOSX/bin/iqtree2 -s masked_masked-delim.fasta -m GTR -g constraint-old.nwk -czb -redo
constraint-old.nwk.txt
So something is really wrong with the software here - it appears that something fails during the parsimony tree by addition stage. No clue why.
The bug is kind of critical for the ability to produce decent trees for Nextclade so I would very much appreciate if you could have a look at addressing this. Or am I doing something wrong? I hope you can reproduce with the above commands.
I'm running this on an M1 Mac - but this shouldn't really matter?
@thomaskf @bqminh
To convince yourself that the error message is nonsense, have a look at the log, the sequence that's purportedly missing has actually passed QC:
Unfold for logs
Same bug happens with version 2.1.4 - so this seems to be a long standing issue.
The "missing" sequence differs every time:
It also doesn't work in 1.6.12 - but I'm not sure whether this is expected or not:
The text was updated successfully, but these errors were encountered: