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

BBmap repair.sh guesses the wrong ASCII quality encoding offset and fails #16

Closed
cdupai-bbi opened this issue May 10, 2024 · 1 comment · Fixed by #17
Closed

BBmap repair.sh guesses the wrong ASCII quality encoding offset and fails #16

cdupai-bbi opened this issue May 10, 2024 · 1 comment · Fixed by #17
Assignees
Labels
enhancement New feature or request

Comments

@cdupai-bbi
Copy link

Thanks for putting together a great tool to solve an annoying problem!

I'm trying to repair some corrupted fastqs using your singularity pipeline and the repair.sh script guesses the correct quality score encoding (ASCII-33) but then part way through decides to switch to ASCII-64 which causes an error (see below). If I run the _fixed_wiped_paired.fastq.gz files through repair.sh manually with the --qin flag set the reads interleave and sort correctly. Adding an optional qin parameter to the top-level singularity command and using that in the repair.sh call would fix this for me.

Warning! Changed from ASCII-33 to ASCII-64 on input Z: 90 -> 59
Up to 17635226 prior reads may have been generated with incorrect qualities.
If this is a problem you may wish to re-run with the flag 'qin=33' or 'qin=64'.

The ASCII quality encoding offset (64) is not set correctly, or the reads are corrupt; quality value below -5.

Please re-run with the flag 'qin=33', 'ignorebadquality', or '-da'.

Offset=64
java.lang.ArrayIndexOutOfBoundsException: Index -6 out of bounds for length 128
        at stream.Read.validateCommonCase_branchless(Read.java:361)
        at stream.Read.validate(Read.java:115)
        at stream.Read.<init>(Read.java:77)
        at stream.Read.<init>(Read.java:50)
        at stream.FASTQ.quadToRead_slow(FASTQ.java:851)
        at stream.FASTQ.toReadList(FASTQ.java:686)
        at stream.FastqReadInputStream.fillBuffer(FastqReadInputStream.java:107)
        at stream.FastqReadInputStream.nextList(FastqReadInputStream.java:93)
        at stream.ConcurrentGenericReadInputStream$ReadThread.readLists(ConcurrentGenericReadInputStream.java:682)
        at stream.ConcurrentGenericReadInputStream$ReadThread.run(ConcurrentGenericReadInputStream.java:658)
java.lang.Exception: Aborting.
        at shared.KillSwitch.kill(KillSwitch.java:108)
        at stream.FASTQ.quadToRead_slow(FASTQ.java:794)
        at stream.FASTQ.toReadList(FASTQ.java:686)
        at stream.FastqReadInputStream.fillBuffer(FastqReadInputStream.java:107)
        at stream.FastqReadInputStream.nextList(FastqReadInputStream.java:93)
        at stream.ConcurrentGenericReadInputStream$ReadThread.readLists(ConcurrentGenericReadInputStream.java:682)
        at stream.ConcurrentGenericReadInputStream$ReadThread.run(ConcurrentGenericReadInputStream.java:658)

Set cris1Active=false
@mazzalab mazzalab added the enhancement New feature or request label May 15, 2024
@mazzalab
Copy link
Owner

Hi, we will work on it and add the parameter in the next release

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

Successfully merging a pull request may close this issue.

2 participants