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

Support BAMs with >65535 CIGAR operations #1003

Closed
wants to merge 11 commits into from
Closed

Support BAMs with >65535 CIGAR operations #1003

wants to merge 11 commits into from

Commits on Dec 16, 2017

  1. Support BAMs with >65535 CIGAR operations

    This is the solution that @yfarjoun and I have agreed on. In the presence of
    CIGAR with >65535 operators, we move the real CIGAR to the CG tag and put a
    fake full clipping CIGAR (i.e. <readLength>S) in place.
    
    `./gradlew` reported one test failure due to `EnaRefServiceTest`. Looking at
    the call stack, I don't think that is my fault. The rest of tests have passed.
    
    On an example SAM and BAM (from <http://lh3lh3.users.sourceforge.net/data>),
    `PrintReadsExample` gives the desired BAM output when taking both SAM and BAM
    as input. Both shallow and deep decoding also write correct BAMs.
    lh3 committed Dec 16, 2017
    Configuration menu
    Copy the full SHA
    c871a7c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1426a0f View commit details
    Browse the repository at this point in the history
  3. keep indexingBin in sync for long-cigar records

    For BAMs generated with old tools, the indexingBin field may not be correctly
    set. We need to manually update this field to avoid errors during random
    retrieval.
    lh3 committed Dec 16, 2017
    Configuration menu
    Copy the full SHA
    be74e75 View commit details
    Browse the repository at this point in the history
  4. fixed bugs in the long-cigar code

    The old code to lift tag to CIGAR did not work. This commit fixed several
    issues:
    
    - byte order is not set when computing alignmentEnd
    - forgot to add *4 to cigarLen in two cases
    - getChar() is not what it is supposed to mean
    
    The new code has been more carefully tested and seems to work.
    lh3 committed Dec 16, 2017
    Configuration menu
    Copy the full SHA
    a2b45d6 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a5f1156 View commit details
    Browse the repository at this point in the history
  6. check "null" restOfData in constructor

    This fixes a test failure.
    lh3 committed Dec 16, 2017
    Configuration menu
    Copy the full SHA
    f5d56bd View commit details
    Browse the repository at this point in the history
  7. - adding tests to hengs code

    - extracting constants etc.
    yfarjoun committed Dec 16, 2017
    Configuration menu
    Copy the full SHA
    cc87242 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    516c7fa View commit details
    Browse the repository at this point in the history

Commits on Dec 20, 2017

  1. - one test failed due to validation failure on empty cigar...so I fix…

    …ed the SamSetRecordBuilder..
    yfarjoun committed Dec 20, 2017
    Configuration menu
    Copy the full SHA
    f44fe98 View commit details
    Browse the repository at this point in the history
  2. - one test failed due to validation failure on empty cigar...so I fix…

    …ed the SamSetRecordBuilder..
    yfarjoun committed Dec 20, 2017
    Configuration menu
    Copy the full SHA
    2bdd694 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ca53a6c View commit details
    Browse the repository at this point in the history