Skip to content
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

Adaptive HSP threshold with LAV produces erroneous output #14

Open
rsharris opened this issue May 3, 2019 · 1 comment
Open

Adaptive HSP threshold with LAV produces erroneous output #14

rsharris opened this issue May 3, 2019 · 1 comment

Comments

@rsharris
Copy link
Collaborator

rsharris commented May 3, 2019

When an adaptive HSP threshold is used, forward-strand alignments in LAV output are not properly tagged as forward strand. Downstream LAV readers will place these alignments on the reverse strand.

The HSP threshold is adaptive if --hspthresh=top<basecount> or --hspthresh=top<percentage>% is used.

LAV is the default output format. This issue is not observed in any other output formats.

Specifically, in this condition lastz fails to emit the s-stanza for the forward strand. Instead, it emits the s-stanza for the reverse strand, then the reverse strand a-stanzas, then the forward stand a-stanzas.

In typical use, lastz processes the forward strand first, independent of the reverse strand, and emits all forward strand alignment info before proceeding with the reverse strand. In contrast, when an adaptive HSP threshold is used output of forward alignments has to be delayed until after reverse strand alignments are found -- which alignments are output depends on what is found on both strands. The bug resulted from the fact that when the forward strand alignments were finally output, the need to output any strand-related pre-alignment information was neglected.

A correction for this will be made shortly. A new tagged release will follow soon after, incorporating a few much more minor fixes.

@rsharris
Copy link
Collaborator Author

The new tagged release 1.04.03 contains the fix for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant