Opened 4 months ago

Last modified 3 months ago

#18140 assigned defect

Bug loading Chimera session

Reported by: m3kelly@… Owned by: Greg Couch
Priority: normal Milestone:
Component: Sessions Version:
Keywords: Cc: chimera-programmers
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

Hello, I would like to report a bug with ChimeraX.

I saved the attached file using an installation of ChimeraX version 1.10rc202505100155 (2025-05-10) on Windows 11 to my google drive folder.

Using a different Windows 11 machine with the same version of ChimeraX, I attempted to load it with the following error:

| Unable to restore session, resetting.

Traceback (most recent call last):
File "C:\Program Files\ChimeraX 1.10rc202505100155\bin\Lib\site-packages\chimerax\core\session.py", line 845, in restore
data = fdeserialize(stream)
^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.10rc202505100155\bin\Lib\site-packages\chimerax\core\serialize.py", line 81, in msgpack_deserialize
return next(stream)
^^^^^^^^^^^^
File "msgpack\\_unpacker.pyx", line 540, in msgpack._cmsgpack.Unpacker.__next__
File "msgpack\\_unpacker.pyx", line 474, in msgpack._cmsgpack.Unpacker._unpack
File "msgpack\\_unpacker.pyx", line 448, in msgpack._cmsgpack.Unpacker.read_from_file
File "C:\Program Files\ChimeraX 1.10rc202505100155\bin\Lib\site-packages\lz4\frame\__init__.py", line 668, in read
return self._buffer.read(size)
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.10rc202505100155\bin\Lib\_compression.py", line 68, in readinto
data = self.read(len(byte_view))
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.10rc202505100155\bin\Lib\_compression.py", line 91, in read
data = self._decompressor.decompress(rawblock, size)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.10rc202505100155\bin\Lib\site-packages\lz4\frame\__init__.py", line 414, in decompress
decompressed, bytes_read, eoframe = decompress_chunk(
^^^^^^^^^^^^^^^^^
RuntimeError: LZ4F_decompress failed with code: ERROR_frameType_unknown

Pleas advise on how I can use this file on multiple machines.


Marcus (Mark) Kelly, PhD.
Trey Ideker Lab
I-BRF (formerly BRFII) 3A16
m3kelly@ucsd.edu
206 280 6696

p53_chimera_sesh.cxs

Attachments (1)

p53_chimera_sesh.cxs (377.0 KB ) - added by m3kelly@… 4 months ago.
Added by email2trac

Download all attachments as: .zip

Change History (5)

by m3kelly@…, 4 months ago

Attachment: p53_chimera_sesh.cxs added

Added by email2trac

comment:1 by pett, 4 months ago

Cc: chimera-programmers added
Component: UnassignedSessions
Owner: set to Greg Couch
Platform: all
Project: ChimeraX
Status: newassigned

Reported by Marcus Kelly

comment:2 by pett, 3 months ago

As per the information in #18153, it seems to be a problem with lz4 4.4.4 that 1.10 uses. 4.3.2 works:

I have found a workaround, which is to use an older version of lz4, 4.3.2, to decompress the file and then save a re-compressed version to a different file.

That is, after running

import lz4.frame
with open('p53_chimera_sesh.cxs','rb') as f :

fr=lz4.frame.decompress(f.read())

with open('p53_chimera_sesh_refr.cxs','wb') as f :

f.write(lz4.frame.compress(fr))

comment:3 by Greg Couch, 3 months ago

Thank you for figuring that out. I downloaded the source code for the Python lz4 package, and only real differences between version 4.3.2 and version 4.4.4 appear to be in its build system. It uses github actions, and the "windows-latest" compiler. So maybe it is a Windows compiler bug.

Unfortunately, the Windows arm64 binary packages don't appear until version 4.4.4. Version 4.3.3 added Python 3.12 support, and 4.4.0 added Python 3.13 support.

comment:4 by m3kelly@…, 3 months ago

Since I have this workaround, I suppose the bug is not extremely high priority.

I don't know what extra functionality lz4 4.4.4 is supposed to provide, but other things being equal it might make sense just to have Chimera use 4.3.2.

Marcus (Mark) Kelly, PhD.
Trey Ideker Lab
I-BRF (formerly BRFII) 3A16
m3kelly@ucsd.edu
206 280 6696
________________________________
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: Wednesday, July 9, 2025 4:29 PM
To: gregc@cgl.ucsf.edu <gregc@cgl.ucsf.edu>; Kelly, Marcus <m3kelly@health.ucsd.edu>
Cc: chimera-programmers@cgl.ucsf.edu <chimera-programmers@cgl.ucsf.edu>
Subject: Re: [ChimeraX] #18140: Bug loading Chimera session

#18140: Bug loading Chimera session
--------------------------------+------------------------
          Reporter:  m3kelly@…  |      Owner:  Greg Couch
              Type:  defect     |     Status:  assigned
          Priority:  normal     |  Milestone:
         Component:  Sessions   |    Version:
        Resolution:             |   Keywords:
        Blocked By:             |   Blocking:
Notify when closed:             |   Platform:  all
           Project:  ChimeraX   |
--------------------------------+------------------------
Comment (by Greg Couch):

 Thank you for figuring that out.  I downloaded the source code for the
 Python lz4 package, and only real differences between version 4.3.2 and
 version 4.4.4 appear to be in its build system.  It uses github actions,
 and the "windows-latest" compiler.  So maybe it is a Windows compiler bug.

 Unfortunately, the Windows arm64 binary packages don't appear until
 version 4.4.4.  Version 4.3.3 added Python 3.12 support, and 4.4.0 added
 Python 3.13 support.
--
Ticket URL: <https://urldefense.com/v3/__https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/18140*comment:3__;Iw!!LLK065n_VXAQ!lifcVBrju9ApLzE5f8gJt6-Tf79oS6aUP_tKx3hA7_0GOcDvrO-3Wx0ZPzMqTXjyYX2UpLyco9ulbLrdnOdYrknOll9GFCb5CHw$ >
ChimeraX <https://urldefense.com/v3/__https://www.rbvi.ucsf.edu/chimerax/__;!!LLK065n_VXAQ!lifcVBrju9ApLzE5f8gJt6-Tf79oS6aUP_tKx3hA7_0GOcDvrO-3Wx0ZPzMqTXjyYX2UpLyco9ulbLrdnOdYrknOll9GpJUB1iU$ >
ChimeraX Issue Tracker
Note: See TracTickets for help on using tickets.