Opened 6 years ago

Closed 6 years ago

#2577 closed defect (fixed)

Model whose ID is None being sorted by ID during model removal

Reported by: goddard@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Core Version:
Keywords: Cc: Greg Couch
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Darwin-19.0.0-x86_64-i386-64bit
ChimeraX Version: 0.91 (2019-11-14)
Description
Error after close command when using volume eraser.

Log:
UCSF ChimeraX version: 0.91 (2019-11-14)  
© 2016-2019 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open 1a0m format mmCIF fromDatabase pdb

1a0m title:  
1.1 angstrom crystal structure of A-conotoxin [TYR15]-epi [more info...]  
  
Chain information for 1a0m #1  
---  
Chain | Description  
A B | α-conotoxin [TYR15]-epi  
  
Non-standard residues in 1a0m #1  
---  
NH2 — amino group  
  
  

> vr true

started SteamVR rendering  
VR mode select  

> select /A:14

8 atoms, 7 bonds, 1 model selected  

> select /A:14

8 atoms, 7 bonds, 1 model selected  

> select up

42 atoms, 43 bonds, 1 model selected  

> select up

138 atoms, 118 bonds, 1 model selected  

> select down

42 atoms, 43 bonds, 1 model selected  

> select /A:11

8 atoms, 7 bonds, 1 model selected  

> select up

42 atoms, 42 bonds, 1 model selected  

> select up

138 atoms, 118 bonds, 1 model selected  

> select down

42 atoms, 42 bonds, 1 model selected  

> select up

138 atoms, 118 bonds, 1 model selected  

> select down

42 atoms, 42 bonds, 1 model selected  

> select /A:10

8 atoms, 7 bonds, 1 model selected  

> select down

8 atoms, 7 bonds, 1 model selected  

> select up

42 atoms, 42 bonds, 1 model selected  

> select up

138 atoms, 118 bonds, 1 model selected  

> select up

276 atoms, 242 bonds, 1 model selected  

> select up

276 atoms, 242 bonds, 2 models selected  

> select up

276 atoms, 242 bonds, 2 models selected  

> select up

276 atoms, 242 bonds, 2 models selected  

> select down

276 atoms, 242 bonds, 1 model selected  

> select down

138 atoms, 118 bonds, 1 model selected  

> select down

42 atoms, 42 bonds, 1 model selected  

> select up

138 atoms, 118 bonds, 1 model selected  

> select down

42 atoms, 42 bonds, 1 model selected  

> select up

138 atoms, 118 bonds, 1 model selected  

> select up

276 atoms, 242 bonds, 1 model selected  

> select down

138 atoms, 118 bonds, 1 model selected  

> select down

42 atoms, 42 bonds, 1 model selected  

> select down

8 atoms, 7 bonds, 1 model selected  

> select down

8 atoms, 7 bonds, 1 model selected  
VR mode move scene  
VR mode move scene  
VR mode zoom  

> open /Users/goddard/ucsf/presentations/milk-oct2019/casein-beta.pdb

Chain information for casein-beta.pdb #2  
---  
Chain | Description  
A | No description available  
  
VR mode translate selected models  
VR mode rotate selected models  
VR mode translate selected models  
VR mode move scene  
No VR support for mouse mode pivot  
VR mode select  

> select clear

> show atoms

VR mode distance  

> distance #1/A:51@O #1/A:25@O

Distance between 1a0m #1/A HOH 51 O and HOH 25 O: 5.835Å  

> ~distance #1/A:51@O #1/A:25@O

> distance #2/A:208@HE2 #2/A:208@HH

Distance between casein-beta.pdb #2/A TYR 208 HE2 and HH: 2.220Å  

> ~distance #2/A:208@HE2 #2/A:208@HH

> distance #2/A:156@HE22 #2/A:208@HE2

Distance between casein-beta.pdb #2/A GLN 156 HE22 and TYR 208 HE2: 6.427Å  

> distance #2/A:156@HG3 #1/A:51@O

Distance between casein-beta.pdb #2/A GLN 156 HG3 and 1a0m #1/A HOH 51 O:
5.951Å  

> ~distance #2/A:156@HG3 #1/A:51@O

> ~distance #2/A:156@HE22 #2/A:208@HE2

VR mode label  

> label #2/A:156 color yellow bgColor dimgray size 64 height 0.7

> label delete residues

> label #2/A:156 color yellow bgColor dimgray size 64 height 0.7

No VR support for mouse mode move label  

> label delete residues

VR mode clip  
VR mode clip rotate  
VR mode zone  

> zone #2/A:156 ribbon false

> zone #2/A:156 ribbon false

> zone #2/A:156 ribbon false residueDistance 6.61 labelDistance 5.29
surfaceDistance 10.6

> zone #2/A:156 ribbon false residueDistance 8.62 labelDistance 6.9
surfaceDistance 13.8

> zone #2/A:156 ribbon false residueDistance 11.2 labelDistance 9
surfaceDistance 18

> zone #2/A:156 ribbon false residueDistance 8.49 labelDistance 6.8
surfaceDistance 13.6

> zone #2/A:156 ribbon false residueDistance 6.38 labelDistance 5.1
surfaceDistance 10.2

> zone #2/A:156 ribbon false residueDistance 4.87 labelDistance 3.89
surfaceDistance 7.79

> zone label false

> zone clear

> open 1547 fromDatabase emdb

Opened emd_1547.map, grid size 160,160,160, pixel 2.8, shown at level 0.231,
step 1, values float32  

> close #1

> close #2

VR mode contour level  

> volume #3 level 0.9561

> volume #3 level 1.077

VR mode crop volume  

> volume #3 region 0,0,0,159,159,159

> volume #3 region 0,0,0,159,70,159

> volume #3 region 0,63,0,159,70,159

VR mode move planes  

> volume #3 region 0,81,0,159,88,159

VR mode clip  

> clip off

VR mode tape measure  

> marker delete #1

VR mode pick blobs  

> measure blob #!3.1 triangleNumber 5894 color #0000ccff outline true

Surface 1547 #3.1 blob:  
volume = 2761.1  
area = 1796.3  
size = 32.395 24.981 18.902  
  

> measure blob #!3.1 triangleNumber 7462 color #7ec06fff outline true

Surface 1547 #3.1 blob:  
volume = 3329.1  
area = 2042.9  
size = 37.37 30.576 19.008  
  

> measure blob #!3.1 triangleNumber 6631 color #da5961ff outline true

Surface 1547 #3.1 blob:  
volume = 544.4  
area = 446.35  
size = 19.244 8.7142 8.6296  
  

> volume #3 level 1.208

VR mode map eraser  

> volume erase #3 center 47.919,21.964,-84.098 radius 51.083

> volume erase #2 center 20.382,-0.4032,86.204 radius 51.072

> close

Traceback (most recent call last):  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 1833, in <lambda>  
dw.closeEvent = lambda e, tw=tool_window, mw=mw: mw.close_request(tw, e)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 574, in close_request  
tool_instance.delete()  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/map_eraser/eraser.py", line 230, in delete  
ses.models.close([self._sphere_model])  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/models.py", line 629, in close  
mremoved = self.remove(models)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/models.py", line 604, in remove  
mlist.sort(key=lambda m: len(m.id), reverse=True)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/models.py", line 604, in <lambda>  
mlist.sort(key=lambda m: len(m.id), reverse=True)  
TypeError: object of type 'NoneType' has no len()  
  
TypeError: object of type 'NoneType' has no len()  
  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/models.py", line 604, in  
mlist.sort(key=lambda m: len(m.id), reverse=True)  
  
See log for complete Python traceback.  
  




OpenGL version: 4.1 ATI-3.2.24
OpenGL renderer: AMD Radeon Pro 580 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.

Change History (2)

comment:1 by Eric Pettersen, 6 years ago

Cc: Greg Couch added
Component: UnassignedCore
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionModel whose ID is None being sorted by ID during model removal

That routine is a mixture of Tom and Greg code, with the most recent edits being Tom's, so assigning to Tom and cc'ing Greg. Part of the code seems to assume that the IDs can't be None, and another part tests whether they're None.

comment:2 by Tom Goddard, 6 years ago

Resolution: fixed
Status: assignedclosed

Fixed.

Closing map eraser tool window after the eraser sphere model was closed tried to close the sphere model again.

Note: See TracTickets for help on using tickets.