Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-1173

IGB slows down when viewing Oxford Nanopore Long reads

    Details

    • Sprint:
      Fall 2017

      Description

      This issue is related to HELP-275 from the User Support Project.
      The user gets errors when viewing Oxford Nanopore Long or Pacbio reads.

      From user:

      I was wondering if you had any experience trying to view long read RNA alignments from Oxford Nanopore or Pacbio in IGB. I have some ON DRS data that I've aligned with gmap. The bam alignments looks good from the aligner. When I load it in IGB everything slows to a crawl. Ona really small window with only one-or-two genes in it its 10s seconds to load and seconds to do anything else. With a large region it becomes unusable.

      I think the issue is related to parsing and understanding the long complex cigar strings for the long reads (they are error prone and indel heavy). If I have the console open when I load them I get lots of instances of 'String index out of range' like this:

      java.lang.StringIndexOutOfBoundsException: String index out of range: 143
      at java.lang.String.substring(String.java:1963)
      at com.affymetrix.genometry.symmetry.impl.BAMSym.interpretCigar(BAMSym.java:489)
      at com.affymetrix.genometry.symmetry.impl.BAMSym.getBaseQuality(BAMSym.java:440)
      at com.affymetrix.genometry.symmetry.impl.BAMSym.access$100(BAMSym.java:27)
      at com.affymetrix.genometry.symmetry.impl.BAMSym$BamChildSingletonSeqSym.getBaseQuality(BAMSym.java:166)
      at com.affymetrix.genometry.symmetry.impl.BAMSym$BamChildSingletonSeqSym.getAverageQuality(BAMSym.java:177)
      at com.affymetrix.genometry.symmetry.impl.BAMSym$BamChildSingletonSeqSym.cloneProperties(BAMSym.java:222)
      at com.affymetrix.igb.tiers.TierLabelManager.determineProps(TierLabelManager.java:738)
      at com.affymetrix.igb.view.SeqMapView.determineProps(SeqMapView.java:2236)
      at com.affymetrix.igb.property.PropertyView.getPropertiesRow(PropertyView.java:234)
      at com.affymetrix.igb.view.SeqMapView.setToolTip(SeqMapView.java:2087)
      at com.affymetrix.igb.view.SeqMapView.setToolTip(SeqMapView.java:2045)
      at com.affymetrix.igb.view.SeqMapViewMouseListener.oldToolTip(SeqMapViewMouseListener.java:210)
      at com.affymetrix.igb.view.SeqMapViewMouseListener.mouseMoved(SeqMapViewMouseListener.java:192)
      at com.affymetrix.genoviz.widget.NeoWidget.heardMouseEvent(NeoWidget.java:1339)
      at com.affymetrix.genoviz.widget.NeoMap.heardMouseEvent(NeoMap.java:1589)
      at com.affymetrix.genoviz.widget.NeoAbstractWidget.mouseMoved(NeoAbstractWidget.java:827)
      at com.affymetrix.genoviz.bioviews.View.heardMouseEvent(View.java:978)
      at com.affymetrix.genoviz.bioviews.View.mouseMoved(View.java:887)
      at java.awt.AWTEventMulticaster.mouseMoved(AWTEventMulticaster.java:329)
      at java.awt.AWTEventMulticaster.mouseMoved(AWTEventMulticaster.java:329)
      at java.awt.Component.processMouseMotionEvent(Component.java:6580)
      at javax.swing.JComponent.processMouseMotionEvent(JComponent.java:3342)
      at java.awt.Component.processEvent(Component.java:6304)
      at java.awt.Container.processEvent(Container.java:2236)
      at java.awt.Component.dispatchEventImpl(Component.java:4891)
      at java.awt.Container.dispatchEventImpl(Container.java:2294)
      at java.awt.Component.dispatchEvent(Component.java:4713)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
      at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4538)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
      at java.awt.Container.dispatchEventImpl(Container.java:2280)
      at java.awt.Window.dispatchEventImpl(Window.java:2750)
      at java.awt.Component.dispatchEvent(Component.java:4713)
      at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
      at java.awt.EventQueue.access$500(EventQueue.java:97)
      at java.awt.EventQueue$3.run(EventQueue.java:709)
      at java.awt.EventQueue$3.run(EventQueue.java:703)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
      at java.awt.EventQueue$4.run(EventQueue.java:731)
      at java.awt.EventQueue$4.run(EventQueue.java:729)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

      Any ideas what the problem is? I can probably send you the bam file to take a look at tomorrow if that'd help....

        Attachments

          Issue Links

            Activity

            mason Mason Meyer (Inactive) created issue -
            mason Mason Meyer (Inactive) made changes -
            Field Original Value New Value
            Description This issue is related to HELP-275 from the User Support Project.
            The user gets this error when viewing Oxford Nanopore Long or Pacbio reads:

            This issue is related to HELP-275 from the User Support Project.
            The user gets errors when viewing Oxford Nanopore Long or Pacbio reads.

            From user:

            I was wondering if you had any experience trying to view long read RNA alignments from Oxford Nanopore or Pacbio in IGB. I have some ON DRS data that I've aligned with gmap. The bam alignments looks good from the aligner. When I load it in IGB everything slows to a crawl. Ona really small window with only one-or-two genes in it its 10s seconds to load and seconds to do anything else. With a large region it becomes unusable.

            I think the issue is related to parsing and understanding the long complex cigar strings for the long reads (they are error prone and indel heavy). If I have the console open when I load them I get lots of instances of 'String index out of range' like this:

            java.lang.StringIndexOutOfBoundsException: String index out of range: 143
            at java.lang.String.substring(String.java:1963)
            at com.affymetrix.genometry.symmetry.impl.BAMSym.interpretCigar(BAMSym.java:489)
            at com.affymetrix.genometry.symmetry.impl.BAMSym.getBaseQuality(BAMSym.java:440)
            at com.affymetrix.genometry.symmetry.impl.BAMSym.access$100(BAMSym.java:27)
            at com.affymetrix.genometry.symmetry.impl.BAMSym$BamChildSingletonSeqSym.getBaseQuality(BAMSym.java:166)
            at com.affymetrix.genometry.symmetry.impl.BAMSym$BamChildSingletonSeqSym.getAverageQuality(BAMSym.java:177)
            at com.affymetrix.genometry.symmetry.impl.BAMSym$BamChildSingletonSeqSym.cloneProperties(BAMSym.java:222)
            at com.affymetrix.igb.tiers.TierLabelManager.determineProps(TierLabelManager.java:738)
            at com.affymetrix.igb.view.SeqMapView.determineProps(SeqMapView.java:2236)
            at com.affymetrix.igb.property.PropertyView.getPropertiesRow(PropertyView.java:234)
            at com.affymetrix.igb.view.SeqMapView.setToolTip(SeqMapView.java:2087)
            at com.affymetrix.igb.view.SeqMapView.setToolTip(SeqMapView.java:2045)
            at com.affymetrix.igb.view.SeqMapViewMouseListener.oldToolTip(SeqMapViewMouseListener.java:210)
            at com.affymetrix.igb.view.SeqMapViewMouseListener.mouseMoved(SeqMapViewMouseListener.java:192)
            at com.affymetrix.genoviz.widget.NeoWidget.heardMouseEvent(NeoWidget.java:1339)
            at com.affymetrix.genoviz.widget.NeoMap.heardMouseEvent(NeoMap.java:1589)
            at com.affymetrix.genoviz.widget.NeoAbstractWidget.mouseMoved(NeoAbstractWidget.java:827)
            at com.affymetrix.genoviz.bioviews.View.heardMouseEvent(View.java:978)
            at com.affymetrix.genoviz.bioviews.View.mouseMoved(View.java:887)
            at java.awt.AWTEventMulticaster.mouseMoved(AWTEventMulticaster.java:329)
            at java.awt.AWTEventMulticaster.mouseMoved(AWTEventMulticaster.java:329)
            at java.awt.Component.processMouseMotionEvent(Component.java:6580)
            at javax.swing.JComponent.processMouseMotionEvent(JComponent.java:3342)
            at java.awt.Component.processEvent(Component.java:6304)
            at java.awt.Container.processEvent(Container.java:2236)
            at java.awt.Component.dispatchEventImpl(Component.java:4891)
            at java.awt.Container.dispatchEventImpl(Container.java:2294)
            at java.awt.Component.dispatchEvent(Component.java:4713)
            at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
            at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4538)
            at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
            at java.awt.Container.dispatchEventImpl(Container.java:2280)
            at java.awt.Window.dispatchEventImpl(Window.java:2750)
            at java.awt.Component.dispatchEvent(Component.java:4713)
            at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
            at java.awt.EventQueue.access$500(EventQueue.java:97)
            at java.awt.EventQueue$3.run(EventQueue.java:709)
            at java.awt.EventQueue$3.run(EventQueue.java:703)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
            at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
            at java.awt.EventQueue$4.run(EventQueue.java:731)
            at java.awt.EventQueue$4.run(EventQueue.java:729)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
            at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
            at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
            at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
            at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

            Any ideas what the problem is? I can probably send you the bam file to take a look at tomorrow if that'd help....

            mason Mason Meyer (Inactive) made changes -
            Link This issue relates to HELP-275 [ HELP-275 ]
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            ann.loraine Ann Loraine made changes -
            Attachment GoToIgb.html [ 14007 ]
            ann.loraine Ann Loraine made changes -
            Attachment GoToIgb.html [ 14007 ]
            ann.loraine Ann Loraine made changes -
            Attachment GoToIgb.html [ 14008 ]
            spatil26 Sanket Patil (Inactive) made changes -
            Assignee Sanket Patil [ spatil26 ]
            spatil26 Sanket Patil (Inactive) made changes -
            Assignee Sanket Patil [ spatil26 ] Ashwini Kadam [ akadam3 ]
            spatil26 Sanket Patil (Inactive) made changes -
            Sprint Spring 2017 [ 47 ]
            spatil26 Sanket Patil (Inactive) made changes -
            Rank Ranked lower
            akadam3 Ashwini Kadam (Inactive) made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            akadam3 Ashwini Kadam (Inactive) made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            akadam3 Ashwini Kadam (Inactive) made changes -
            Assignee Ashwini Kadam [ akadam3 ] Sanket Patil [ spatil26 ]
            akadam3 Ashwini Kadam (Inactive) made changes -
            Status Needs 1st Level Review [ 10005 ] Reviewing [ 10301 ]
            spatil26 Sanket Patil (Inactive) made changes -
            Status Reviewing [ 10301 ] Needs 1st Level Review [ 10005 ]
            spatil26 Sanket Patil (Inactive) made changes -
            Assignee Sanket Patil [ spatil26 ] Ann Loraine [ aloraine ]
            akadam3 Ashwini Kadam (Inactive) made changes -
            Status Needs 1st Level Review [ 10005 ] Pull Request Submitted [ 10101 ]
            ann.loraine Ann Loraine made changes -
            Status Pull Request Submitted [ 10101 ] Ready for Pull Request [ 10304 ]
            ann.loraine Ann Loraine made changes -
            Assignee Ann Loraine [ aloraine ] Ashwini Kadam [ akadam3 ]
            akadam3 Ashwini Kadam (Inactive) made changes -
            Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
            akadam3 Ashwini Kadam (Inactive) made changes -
            Assignee Ashwini Kadam [ akadam3 ]
            ann.loraine Ann Loraine made changes -
            Status Pull Request Submitted [ 10101 ] Ready for Pull Request [ 10304 ]
            ann.loraine Ann Loraine made changes -
            Assignee Ashwini Kadam [ akadam3 ]
            ann.loraine Ann Loraine made changes -
            Status Ready for Pull Request [ 10304 ] Needs Testing [ 10002 ]
            ann.loraine Ann Loraine made changes -
            Assignee Ashwini Kadam [ akadam3 ] Mason Meyer [ mason ]
            mason Mason Meyer (Inactive) made changes -
            Status Needs Testing [ 10002 ] Testing In Progress [ 10003 ]
            mason Mason Meyer (Inactive) made changes -
            Resolution Done [ 10000 ]
            Status Testing In Progress [ 10003 ] Closed [ 6 ]
            mason Mason Meyer (Inactive) made changes -
            Fix Version/s 9.0.1 Minor Release [ 10500 ]
            ann.loraine Ann Loraine made changes -
            Workflow Loraine Lab Workflow [ 17834 ] Fall 2019 Workflow Update [ 19807 ]
            ann.loraine Ann Loraine made changes -
            Workflow Fall 2019 Workflow Update [ 19807 ] Revised Fall 2019 Workflow Update [ 21926 ]

              People

              • Assignee:
                mason Mason Meyer (Inactive)
                Reporter:
                mason Mason Meyer (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: