Opened 6 years ago

Closed 6 years ago

#2952 closed defect (duplicate)

Eventual failure in glDrawBuffer

Reported by: chimerax-bug-report@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Graphics Version:
Keywords: Cc: Tristan Croll
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Linux-3.10.0-1062.4.3.el7.x86_64-x86_64-with-centos-7.7.1908-Core
ChimeraX Version: 0.92 (2020-02-11)
Description
(Describe the actions that caused this problem to occur here)

Log:
UCSF ChimeraX version: 0.92 (2020-02-11)  
© 2016-2020 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open /nas/nsilvia/Trx_MsrAs/Refine_117/Trx_MsrAs_refine_117.pdb

Summary of feedback from opening
/nas/nsilvia/Trx_MsrAs/Refine_117/Trx_MsrAs_refine_117.pdb  
---  
warnings | Ignored bad PDB record found on line 1  
REMARK Date 2019-12-10 Time 14:49:25 CET +0100 (1575985765.95 s)  
  
Ignored bad PDB record found on line 2  
REMARK PHENIX refinement  
  
Ignored bad PDB record found on line 4  
REMARK ****************** INPUT FILES AND LABELS
******************************  
  
Ignored bad PDB record found on line 5  
REMARK Reflections:  
  
Ignored bad PDB record found on line 6  
REMARK file name :
/mnt/data1/Silvia/Xray/20190927/merge/TrxC35SMsrAC206_cut2_94A.mtz  
  
48 messages similar to the above omitted  
  
Chain information for Trx_MsrAs_refine_117.pdb #1  
---  
Chain | Description  
A | No description available  
B | No description available  
C | No description available  
D | No description available  
E | No description available  
F | No description available  
G | No description available  
  

> toolshed show ISOLDE

> set selectionWidth 4

Chain information for Trx_MsrAs_refine_117.pdb  
---  
Chain | Description  
1.1/A | No description available  
1.1/B | No description available  
1.1/C | No description available  
1.1/D | No description available  
1.1/E | No description available  
1.1/F | No description available  
1.1/G | No description available  
  
Done loading forcefield  
Reflection data provided as intensities. Performing French & Wilson scaling to
convert to amplitudes...  

Missing "hbond" keyword's argument  

> addh

Summary of feedback from adding hydrogens to Trx_MsrAs_refine_117.pdb #1.1  
---  
warnings | Not adding hydrogens to /A LYS 6 CB because it is missing heavy-
atom bond partners  
Not adding hydrogens to /B LYS 5 CB because it is missing heavy-atom bond
partners  
Not adding hydrogens to /G PHE 12 CB because it is missing heavy-atom bond
partners  
Not adding hydrogens to /G LYS 57 CB because it is missing heavy-atom bond
partners  
notes | No usable SEQRES records for Trx_MsrAs_refine_117.pdb (#1.1) chain A;
guessing termini instead  
No usable SEQRES records for Trx_MsrAs_refine_117.pdb (#1.1) chain B; guessing
termini instead  
No usable SEQRES records for Trx_MsrAs_refine_117.pdb (#1.1) chain C; guessing
termini instead  
No usable SEQRES records for Trx_MsrAs_refine_117.pdb (#1.1) chain D; guessing
termini instead  
No usable SEQRES records for Trx_MsrAs_refine_117.pdb (#1.1) chain E; guessing
termini instead  
2 messages similar to the above omitted  
Chain-initial residues that are actual N termini: /A PHE 3, /B ASP 4, /C ALA
3, /D LYS 6, /E SER 1, /F SER 1, /G LYS 3  
Chain-initial residues that are not actual N termini:  
Chain-final residues that are actual C termini: /A ALA 211, /F ALA 108, /G ALA
108  
Chain-final residues that are not actual C termini: /B GLU 210, /C GLU 210, /D
CYS 206, /E LEU 103  
937 hydrogen bonds  
/B GLU 210 is not terminus, removing H atom from 'C'  
/C GLU 210 is not terminus, removing H atom from 'C'  
/D CYS 206 is not terminus, removing H atom from 'C'  
/E LEU 103 is not terminus, removing H atom from 'C'  
8437 hydrogens added  
  

> hide HC

> select #1

17247 atoms, 17452 bonds, 26 models selected  
Map is too large for fast cubic interpolation on the GPU! Switching to slower,
more memory-efficient implementation.  
Updating bulk solvent parameters...  

QWidget::repaint: Recursive repaint detected  

> select clear

Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Unable to flip peptide bond after 50 rounds. Giving up.  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
Updating bulk solvent parameters...  
An error occurred in drawing the scene. Redrawing graphics is now stopped to
avoid a continuous stream of error messages. To restart graphics use the
command "graphics restart" after changing the settings that caused the error.  
  
Traceback (most recent call last):  
File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-
packages/chimerax/core/updateloop.py", line 73, in draw_new_frame  
view.draw(check_for_changes = False)  
File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-
packages/chimerax/core/graphics/view.py", line 166, in draw  
self._draw_scene(camera, drawings)  
File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-
packages/chimerax/core/graphics/view.py", line 248, in _draw_scene  
pixel_width = self._highlight_width)  
File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-
packages/chimerax/core/graphics/drawing.py", line 1480, in
draw_highlight_outline  
r.outline.finish_rendering_outline(color=color, pixel_width=pixel_width)  
File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-
packages/chimerax/core/graphics/opengl.py", line 1756, in
finish_rendering_outline  
r.pop_framebuffer()  
File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-
packages/chimerax/core/graphics/opengl.py", line 644, in pop_framebuffer  
fb.activate()  
File "/opt/UCSF/ChimeraX-daily/lib/python3.7/site-
packages/chimerax/core/graphics/opengl.py", line 2137, in activate  
GL.glDrawBuffer(self._draw_buffer)  
File "src/errorchecker.pyx", line 58, in
OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError  
OpenGL.error.GLError: GLError(  
err = 1282,  
description = b'invalid operation',  
baseOperation = glDrawBuffer,  
cArguments = (GL_BACK,)  
)  
  




OpenGL version: 3.3.0 NVIDIA 440.36
OpenGL renderer: TITAN Xp/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation

Change History (5)

comment:1 by pett, 6 years ago

Component: UnassignedGraphics
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionEventual failure in glDrawBuffer

comment:2 by Tom Goddard, 6 years ago

Cc: Tristan Croll added

ISOLDE is being used.

I see an error message "QWidget::repaint: Recursive repaint detected" which is slightly worrisome.

Then glDrawBuffer Invalid Operation in code where it is drawing the scene and trying to draw the selection outline. It has just popped the selection drawing framebuffer and is now trying to set OpenGL drawing to the onscreen framebuffer. OpenGL docs say the Invalid Operation means the framebuffer does not have the target buffer (GL_BACK). It is not clear how that is possible.

in reply to:  3 ; comment:3 by Tristan Croll, 6 years ago

The “recursive repaint detected” warning happens on first instantiation of the Ramachandran plot. I don’t *think* it’s a real problem - I think it’s triggered by redrawing the plot window twice in one iteration of the event loop (once to draw the background and save it for fast redraw, again to actually draw the scatter plot). I guess there’d be no harm in me reworking this so the second draw happens on the next round of the graphics loop.

Anyway, I doubt it’s your culprit here.
 

 


comment:4 by Tom Goddard, 6 years ago

We saw this recently in bug report #2729 on Linux (same as this ticket) where the user switched users and then came back to the user running ChimeraX and saw this error. The analysis on that ticket suggests that Linux invalidated the OpenGL context ChimeraX was using. ChimeraX has no way to recover from an invalidated OpenGL con

comment:5 by Tom Goddard, 6 years ago

Resolution: duplicate
Status: assignedclosed
Note: See TracTickets for help on using tickets.