Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#1690 closed defect (fixed)

couldn't restore recently saved session with DICOM data

Reported by: Elaine Meng Owned by: Tom Goddard
Priority: normal Milestone:
Component: Sessions Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Darwin-17.7.0-x86_64-i386-64bit
ChimeraX Version: 0.9 (2019-02-08)
Description
couldn't restore recently saved session with DICOM data

session attached

Log:
UCSF ChimeraX version: 0.9 (2019-02-08)  
© 2016-2019 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open /Users/meng/Desktop/middle.cxs format session

Unable to restore session, resetting.  
  
Traceback (most recent call last):  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 594, in restore  
obj = sm.restore_snapshot(self, data)  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/map/session.py", line 218, in restore_snapshot  
grids = grid_data_from_state(data, gdcache, session, rfp)  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/map/session.py", line 333, in grid_data_from_state  
dlist = open_data(path, gid, file_type, dbfetch, gdcache, session)  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/map/session.py", line 403, in open_data  
stack_images = False)  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/map/data/opendialog.py", line 27, in open_grid_files  
glist = open_file(path, file_type)  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/map/data/fileformats.py", line 151, in open_file  
data = open_func(apath, **kw)  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/dicom/dicom.py", line 164, in open_dicom_grids  
grids = dicom_grids(paths, log = log, verbose = verbose)  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/dicom/dicom_grid.py", line 18, in dicom_grids  
series = find_dicom_series(paths, log = log, verbose = verbose)  
File
"/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/dicom/dicom_format.py", line 31, in find_dicom_series  
log.status('Reading DICOM series %d of %d files in %d series' % (nsfiles,
nfiles, nseries))  
AttributeError: 'NoneType' object has no attribute 'status'  
  
opened ChimeraX session  




OpenGL version: 4.1 NVIDIA-10.32.0 355.11.10.10.40.102
OpenGL renderer: NVIDIA GeForce GTX 675MX OpenGL Engine
OpenGL vendor: NVIDIA Corporation
File attachment: middle.cxs

middle.cxs

Attachments (1)

middle.cxs (3.8 KB ) - added by Elaine Meng 7 years ago.
Added by email2trac

Download all attachments as: .zip

Change History (6)

by Elaine Meng, 7 years ago

Attachment: middle.cxs added

Added by email2trac

comment:1 by Elaine Meng, 7 years ago

Component: UnassignedSessions
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissioncouldn't restore recently saved session with DICOM data

comment:2 by Tom Goddard, 7 years ago

Resolution: fixed
Status: assignedclosed

Fixed.

comment:3 by Elaine Meng, 7 years ago

Welll... now I get a different traceback:

UCSF ChimeraX version: 0.9 (2019-02-13)
© 2016-2019 Regents of the University of California. All rights reserved.
How to cite UCSF ChimeraX
open /Users/meng/Desktop/middle.cxs format sessionUnable to restore session, resetting.

Traceback (most recent call last):
File "/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/chimerax/core/session.py", line 594, in restore
obj = sm.restore_snapshot(self, data)
File "/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/chimerax/map/session.py", line 218, in restore_snapshot
grids = grid_data_from_state(data, gdcache, session, rfp)
File "/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/chimerax/map/session.py", line 333, in grid_data_from_state
dlist = open_data(path, gid, file_type, dbfetch, gdcache, session)
File "/Users/chimera/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/chimerax/map/session.py", line 420, in open_data
gdcache[(data.path, data.grid_id)] = data
TypeError: unhashable type: 'list'

opened ChimeraX session

comment:4 by Tom Goddard, 7 years ago

Ok. I did not test with your session because I did not have the segmentation files the session uses. But I produced exactly the same original error with a session I made, and my fix worked for my session. I'll test with your session. First I will need to fix session restore when so that it does not ask me to replace hundreds of missing *.dcm files.

comment:5 by Tom Goddard, 7 years ago

Fixed.

The second error only happened with single *.dcm files which were apparently used by your segmentations. I was able to reproduce it with a different dicom segmentations example. Problem was that session restore expected file paths in a tuple but it got a list in the single file dicom case.

Note: See TracTickets for help on using tickets.