Details
-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Done
-
Affects Version/s: None
-
Fix Version/s: 9.0.1 Minor Release
-
Labels:None
-
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
- relates to
-
HELP-275 IGB and Oxford Nanopore Long reads....
-
- To-Do
-
The user has responded and verified that IGB is functioning properly for his test files. Since this has been verified by the user who originally reported this issue as well as my testing, I am marking this story as resolved.