pbalign.py output and "does not contain any sequence names which match the current genome"

97 views
Skip to first unread message

dma...@gmail.com

unread,
Jun 23, 2014, 6:59:21 PM6/23/14
to igv-...@googlegroups.com
Greetings,

pbalign.py was used to find and align matches to a reference sequence among a large number of PacBIO files (using the "file of file names"
mechanism) to produce a SAM file.  This seems to have worked fine and the results can be viewed with "samtools -tview" after sorting. 
However, I cannot get them to show up in IGV. The fasta file (overlap_seq1.fasta) looks normal:

>Contig25
(many lines of DNA sequence)

and the SAM file produced looks OK too:

@HD     VN:1.3.1
@SQ     SN:Contig25     LN:48322        M5:3ed6be23ed454b308fe5d783888273b1
@RG     ID:a0d3b8d98a   PU:m120313_210418_00121_c100283422550000001523008607041213_s1_p0        SM:c100283422550000001523008607041213
(many more @RG lines)
@PG (details about the BLASR command line)
@PG (details about the SAMFILTER command line)
m120313_210418_00121_c100283422550000001523008607041213_s1_p0/49718/0_5243      16      Contig25        19112   254     (etc)
(more matches follow)

Sort it like this:

/usr/local/IGVTools/igvtools sort overlap_seq1.sam overlap_seq1.sorted.sam

and the overlap_seq1.sorted.sam file looks like the original except the sequence lines are reordered, with the first one now being:

m120420_041440_00121_c100324062550000001523016709061295_s1_p0/10323/0_10310     0       Contig25        1       254    

Try to view that sorted SAM file in IGV.

1. Start IGV
2. load overlap_seq1.fasta file as a "genome" and it shows up in the genome list.  (The chromosome list is blank).
3. load the overlap_seq1.sorted.sam with File->Load from file

and it pops up this dialog:

   File:  /home/mathog/overlap_seq1.sam
   does not contain any sequence names which match the current genome

   File:  Contig25,
   Genome:
   [OK]

Click OK, and nothing is visible in the viewer.

IVG is using Java 1.7.0_55 on RHEL (64 bit).

Suggestions?

Thank you.


dma...@gmail.com

unread,
Jun 23, 2014, 7:08:55 PM6/23/14
to igv-...@googlegroups.com
This seems to be some IGV peculiarity, because these files open without issue in Tablet.



James Robinson

unread,
Jun 23, 2014, 9:45:50 PM6/23/14
to igv-help
Hi,

I'm not sure, but the igvtools sort function by be causing the problem by jumbling the header.   Support of direct loading of SAM files is there because IGV existed before the BAM spec and java tools were available.    The current advice is to use indexed BAM files.  

We will update the doc and remove the reference for sorting SAM files, the sort function is still important for other formats but not SAM.

Jim



--

---
You received this message because you are subscribed to the Google Groups "igv-help" group.
To unsubscribe from this group and stop receiving emails from it, send an email to igv-help+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/igv-help/13553671-5b7a-4091-9b23-d243b18dbda5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

dma...@gmail.com

unread,
Jun 24, 2014, 1:12:10 PM6/24/14
to igv-...@googlegroups.com


On Monday, June 23, 2014 6:45:50 PM UTC-7, Jim Robinson wrote:
Hi,

I'm not sure, but the igvtools sort function by be causing the problem by jumbling the header.   Support of direct loading of SAM files is there because IGV existed before the BAM spec and java tools were available.    The current advice is to use indexed BAM files.

BAM does the exact same thing.  Tried it two ways (using samtools for the following):

sam -> sorted sam -> bam -> index of bam
sam -> bam -> sorted bam -> index of bam

and neither one worked.

IGV is also throwing a lot of exceptions and not always drawing the screen properly.  One of those situations where home must mouse over or click on sections of the screen to make the underlying program elements visible. 

ERROR [2014-06-24 09:53:48,317]  [DefaultExceptionHandler.java:42] [AWT-EventQueue-0]  Unhandled exception
java.lang.NullPointerException
        at org.broad.igv.ui.panel.ZoomSliderPanel.paintHorizontal(ZoomSliderPanel.java:168)
        at org.broad.igv.ui.panel.ZoomSliderPanel.paintComponent(ZoomSliderPanel.java:100)
        at javax.swing.JComponent.paint(JComponent.java:1045)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210)
        at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1529)
        at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1452)
        at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:311)
        at javax.swing.RepaintManager.paint(RepaintManager.java:1249)
        at javax.swing.JComponent._paintImmediately(JComponent.java:5158)
        at javax.swing.JComponent.paintImmediately(JComponent.java:4969)
        at javax.swing.RepaintManager$3.run(RepaintManager.java:808)
        at javax.swing.RepaintManager$3.run(RepaintManager.java:796)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
        at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796)
        at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769)
        at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718)
        at javax.swing.RepaintManager.access$1100(RepaintManager.java:62)
        at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1677)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
        at java.awt.EventQueue.access$200(EventQueue.java:103)
        at java.awt.EventQueue$3.run(EventQueue.java:694)
        at java.awt.EventQueue$3.run(EventQueue.java:692)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

I am using IGV over an X11 tunnel via putty on Windows XP where the Cygwin X11 server is running.  Generally that is pretty reliable for X11 programs, if a bit slower than running them on the local display of a workstation.  This has something to do with using the fasta file as a genome.  Doing this:

mv igv/prefs.properties igv/hide_prefs.properties
/usr/local/IGV/igv.sh

and it starts up cleanly, but load the fasta file (48322 bases) and it does:

ERROR [2014-06-24 10:00:21,950]  [DefaultExceptionHandler.java:42] [AWT-EventQueue-0]  Unhandled exception
java.lang.NegativeArraySizeException
        at org.broad.igv.ui.panel.ZoomSliderPanel.updateTickCount(ZoomSliderPanel.java:89)
        at org.broad.igv.ui.panel.ZoomSliderPanel.paintComponent(ZoomSliderPanel.java:98)
        at javax.swing.JComponent.paint(JComponent.java:1045)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paint(JComponent.java:1054)
        at javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
        at javax.swing.JComponent.paintChildren(JComponent.java:878)
        at javax.swing.JComponent.paintToOffscreen(JComponent.java:5217)
        at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1529)
        at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1452)
        at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:311)
        at javax.swing.RepaintManager.paint(RepaintManager.java:1249)
        at javax.swing.JComponent.paint(JComponent.java:1031)
        at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:39)
        at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78)
        at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115)
        at java.awt.Container.paint(Container.java:1967)
        at java.awt.Window.paint(Window.java:3877)
        at javax.swing.RepaintManager$3.run(RepaintManager.java:819)
        at javax.swing.RepaintManager$3.run(RepaintManager.java:796)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
        at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796)
        at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769)
        at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718)
        at javax.swing.RepaintManager.access$1100(RepaintManager.java:62)
        at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1677)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
        at java.awt.EventQueue.access$200(EventQueue.java:103)
        at java.awt.EventQueue$3.run(EventQueue.java:694)
        at java.awt.EventQueue$3.run(EventQueue.java:692)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

and then it keeps glitching from that point on.  The contents of the "toxic" igv/prefs_properties:

IGV.track.show.attribute.views=true
IGV.Bounds=187,133,1150,800
IGV.Frame.ExtendedState=0
LAST_TRACK_DIRECTORY=/home/mathog
GENOME_LIST=/home/mathog/overlap_seq1.fasta
DEFAULT_GENOME_KEY=/home/mathog/overlap_seq1.fasta
LAST_GENOME_IMPORT_DIRECTORY=/home/mathog

That fasta file is attached, perhaps you can reproduce this glitch on your system.

Thanks,

David Mathog


overlap_seq1.fasta
Reply all
Reply to author
Forward
0 new messages