Opened 13 months ago

Closed 5 months ago

#15942 closed defect (fixed)

Restore session: LZ4F_decompress failed with code: ERROR_decompressionFailed

Reported by: marcell.zimanyi@… Owned by: Greg Couch
Priority: low Milestone: 1.10
Component: Sessions Version:
Keywords: Cc: Tom Goddard
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Windows-10-10.0.22631
ChimeraX Version: 1.8 (2024-06-10 23:15:52 UTC)
Description
Unreadable ChimeraX history file

This issue has now happened a few times, both in version 1.8 and with the latest 1.9. I also cannot open .cxs session files. below I will paste the startup error from the log, then the error that shows when I try to open a .cxs file. 



The history of data files opened in ChimeraX was unreadable.
The unreadable file has been copied to C:\Users\marce\AppData\Local\UCSF\ChimeraX\file_history.backup.20240912-132811.
Please report this as a bug using menu Help / Report a Bug.

The error was "Expecting value: line 1 column 1 (char 0)".


Unable to restore session, resetting.

Traceback (most recent call last):
File "C:\Program Files\ChimeraX 1.9.dev202408300208\bin\Lib\site-packages\chimerax\core\session.py", line 845, in restore
data = fdeserialize(stream)
^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.9.dev202408300208\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.9.dev202408300208\bin\Lib\site-packages\lz4\frame\__init__.py", line 668, in read
return self._buffer.read(size)
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.9.dev202408300208\bin\Lib\_compression.py", line 68, in readinto
data = self.read(len(byte_view))
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.9.dev202408300208\bin\Lib\_compression.py", line 103, in read
data = self._decompressor.decompress(rawblock, size)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.9.dev202408300208\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_decompressionFailed

Thanks for taking a look!

Log:
Startup Errors  
---  
bug | The history of data files opened in ChimeraX was unreadable.  
The unreadable file has been copied to
C:\Users\marce\AppData\Local\UCSF\ChimeraX\file_history.backup.20240912-132811.  
Please report this as a bug using menu Help / Report a Bug.  
  
The error was "Expecting value: line 1 column 1 (char 0)".  
note | available bundle cache has not been initialized yet  
  

> set bgColor white

> lighting soft

> ui tool show "Side View"

> ui tool show "Volume Viewer"

UCSF ChimeraX version: 1.8 (2024-06-10)  
© 2016-2024 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  




OpenGL version: 3.3.0 NVIDIA 560.94
OpenGL renderer: NVIDIA GeForce RTX 3070 Laptop GPU/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation

Python: 3.11.4
Locale: en_US.cp1252
Qt version: PyQt6 6.6.1, Qt 6.6.1
Qt runtime version: 6.6.3
Qt platform: windows

Manufacturer: ASUSTeK COMPUTER INC.
Model: ROG Zephyrus G15 GA503QR_GA503QR
OS: Microsoft Windows 11 Home (Build 22631)
Memory: 42,312,519,680
MaxProcessMemory: 137,438,953,344
CPU: 16 AMD Ryzen 9 5900HS with Radeon Graphics        
OSLanguage: en-US

Installed Packages:
    alabaster: 0.7.16
    appdirs: 1.4.4
    asttokens: 2.4.1
    Babel: 2.15.0
    beautifulsoup4: 4.12.3
    blockdiag: 3.0.0
    blosc2: 2.0.0
    build: 1.2.1
    certifi: 2024.6.2
    cftime: 1.6.4
    charset-normalizer: 3.3.2
    ChimeraX-AddCharge: 1.5.17
    ChimeraX-AddH: 2.2.6
    ChimeraX-AlignmentAlgorithms: 2.0.2
    ChimeraX-AlignmentHdrs: 3.5
    ChimeraX-AlignmentMatrices: 2.1
    ChimeraX-Alignments: 2.12.7
    ChimeraX-AlphaFold: 1.0
    ChimeraX-AltlocExplorer: 1.1.1
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Arrays: 1.1
    ChimeraX-Atomic: 1.57.1
    ChimeraX-AtomicLibrary: 14.0.6
    ChimeraX-AtomSearch: 2.0.1
    ChimeraX-AxesPlanes: 2.4
    ChimeraX-BasicActions: 1.1.2
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 2.4.6
    ChimeraX-BondRot: 2.0.4
    ChimeraX-BugReporter: 1.0.1
    ChimeraX-BuildStructure: 2.12.1
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.2.7
    ChimeraX-ButtonPanel: 1.0.1
    ChimeraX-CageBuilder: 1.0.1
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.4
    ChimeraX-ChangeChains: 1.1
    ChimeraX-CheckWaters: 1.4
    ChimeraX-ChemGroup: 2.0.1
    ChimeraX-Clashes: 2.2.4
    ChimeraX-Clipper: 0.23.0
    ChimeraX-ColorActions: 1.0.5
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.6
    ChimeraX-CommandLine: 1.2.5
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.8
    ChimeraX-CoreFormats: 1.2
    ChimeraX-coulombic: 1.4.3
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0.1
    ChimeraX-DataFormats: 1.2.3
    ChimeraX-Dicom: 1.2.4
    ChimeraX-DiffPlot: 1.0
    ChimeraX-DistMonitor: 1.4.2
    ChimeraX-DockPrep: 1.1.3
    ChimeraX-Dssp: 2.0
    ChimeraX-EMDB-SFF: 1.0
    ChimeraX-ESMFold: 1.0
    ChimeraX-FileHistory: 1.0.1
    ChimeraX-FunctionKey: 1.0.1
    ChimeraX-Geometry: 1.3
    ChimeraX-gltf: 1.0
    ChimeraX-Graphics: 1.1.1
    ChimeraX-Hbonds: 2.4
    ChimeraX-Help: 1.2.2
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.1
    ChimeraX-ISOLDE: 1.8.dev0
    ChimeraX-ItemsInspection: 1.0.1
    ChimeraX-IUPAC: 1.0
    ChimeraX-Label: 1.1.10
    ChimeraX-ListInfo: 1.2.2
    ChimeraX-Log: 1.1.6
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.9.1
    ChimeraX-Map: 1.2
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0.1
    ChimeraX-MapFilter: 2.0.1
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.1.1
    ChimeraX-Markers: 1.0.1
    ChimeraX-Mask: 1.0.2
    ChimeraX-MatchMaker: 2.1.3
    ChimeraX-MCopy: 1.0
    ChimeraX-MDcrds: 2.7.1
    ChimeraX-MedicalToolbar: 1.0.3
    ChimeraX-Meeting: 1.0.1
    ChimeraX-MLP: 1.1.1
    ChimeraX-mmCIF: 2.14.1
    ChimeraX-MMTF: 2.2
    ChimeraX-Modeller: 1.5.17
    ChimeraX-ModelPanel: 1.5
    ChimeraX-ModelSeries: 1.0.1
    ChimeraX-Mol2: 2.0.3
    ChimeraX-Mole: 1.0
    ChimeraX-Morph: 1.0.2
    ChimeraX-MouseModes: 1.2
    ChimeraX-Movie: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nifti: 1.2
    ChimeraX-NMRSTAR: 1.0.2
    ChimeraX-NRRD: 1.2
    ChimeraX-Nucleotides: 2.0.3
    ChimeraX-OpenCommand: 1.13.5
    ChimeraX-PDB: 2.7.5
    ChimeraX-PDBBio: 1.0.1
    ChimeraX-PDBLibrary: 1.0.4
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PhenixUI: 1.3.5
    ChimeraX-PickBlobs: 1.0.1
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.1.1
    ChimeraX-PubChem: 2.2
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1.2
    ChimeraX-RemoteControl: 1.0
    ChimeraX-RenderByAttr: 1.4.1
    ChimeraX-RenumberResidues: 1.1
    ChimeraX-ResidueFit: 1.0.1
    ChimeraX-RestServer: 1.2
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 4.0
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.5.1
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0.2
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0.1
    ChimeraX-Segmentations: 3.0.15
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.11.2
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0.1
    ChimeraX-Shortcuts: 1.1.1
    ChimeraX-ShowSequences: 1.0.3
    ChimeraX-SideView: 1.0.1
    ChimeraX-Smiles: 2.1.2
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.16.5
    ChimeraX-STL: 1.0.1
    ChimeraX-Storm: 1.0
    ChimeraX-StructMeasure: 1.2.1
    ChimeraX-Struts: 1.0.1
    ChimeraX-Surface: 1.0.1
    ChimeraX-SwapAA: 2.0.1
    ChimeraX-SwapRes: 2.5
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-TaskManager: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.1.2
    ChimeraX-ToolshedUtils: 1.2.4
    ChimeraX-Topography: 1.0
    ChimeraX-ToQuest: 1.0
    ChimeraX-Tug: 1.0.1
    ChimeraX-UI: 1.39.1
    ChimeraX-uniprot: 2.3
    ChimeraX-UnitCell: 1.0.1
    ChimeraX-ViewDockX: 1.4.3
    ChimeraX-VIPERdb: 1.0
    ChimeraX-Vive: 1.1
    ChimeraX-VolumeMenu: 1.0.1
    ChimeraX-vrml: 1.0
    ChimeraX-VTK: 1.0
    ChimeraX-WavefrontOBJ: 1.0
    ChimeraX-WebCam: 1.0.2
    ChimeraX-WebServices: 1.1.4
    ChimeraX-Zone: 1.0.1
    colorama: 0.4.6
    comm: 0.2.2
    comtypes: 1.4.1
    contourpy: 1.2.1
    cxservices: 1.2.2
    cycler: 0.12.1
    Cython: 3.0.10
    debugpy: 1.8.1
    decorator: 5.1.1
    docutils: 0.20.1
    executing: 2.0.1
    filelock: 3.13.4
    fonttools: 4.53.0
    funcparserlib: 2.0.0a0
    glfw: 2.7.0
    grako: 3.16.5
    h5py: 3.11.0
    html2text: 2024.2.26
    idna: 3.7
    ihm: 1.0
    imagecodecs: 2024.1.1
    imagesize: 1.4.1
    ipykernel: 6.29.2
    ipython: 8.21.0
    ipywidgets: 8.1.3
    jedi: 0.19.1
    jinja2: 3.1.4
    jupyter-client: 8.6.0
    jupyter-core: 5.7.2
    jupyterlab-widgets: 3.0.11
    kiwisolver: 1.4.5
    line-profiler: 4.1.2
    lxml: 5.2.1
    lz4: 4.3.3
    MarkupSafe: 2.1.5
    matplotlib: 3.8.4
    matplotlib-inline: 0.1.7
    msgpack: 1.0.8
    nest-asyncio: 1.6.0
    netCDF4: 1.6.5
    networkx: 3.3
    nibabel: 5.2.0
    nptyping: 2.5.0
    numexpr: 2.10.0
    numpy: 1.26.4
    openvr: 1.26.701
    packaging: 24.1
    ParmEd: 4.2.2
    parso: 0.8.4
    pep517: 0.13.1
    pillow: 10.3.0
    pip: 24.0
    pkginfo: 1.10.0
    platformdirs: 4.2.2
    prompt-toolkit: 3.0.47
    psutil: 5.9.8
    pure-eval: 0.2.2
    py-cpuinfo: 9.0.0
    pycollada: 0.8
    pydicom: 2.4.4
    pygments: 2.17.2
    pynmrstar: 3.3.4
    pynrrd: 1.0.0
    PyOpenGL: 3.1.7
    PyOpenGL-accelerate: 3.1.7
    pyopenxr: 1.0.3401
    pyparsing: 3.1.2
    pyproject-hooks: 1.1.0
    PyQt6-commercial: 6.6.1
    PyQt6-Qt6: 6.6.3
    PyQt6-sip: 13.6.0
    PyQt6-WebEngine-commercial: 6.6.0
    PyQt6-WebEngine-Qt6: 6.6.3
    python-dateutil: 2.9.0.post0
    pytz: 2024.1
    pywin32: 306
    pyzmq: 26.0.3
    qtconsole: 5.5.1
    QtPy: 2.4.1
    RandomWords: 0.4.0
    requests: 2.31.0
    scipy: 1.13.0
    setuptools: 69.5.1
    sfftk-rw: 0.8.1
    six: 1.16.0
    snowballstemmer: 2.2.0
    sortedcontainers: 2.4.0
    soupsieve: 2.5
    sphinx: 7.2.6
    sphinx-autodoc-typehints: 2.0.1
    sphinxcontrib-applehelp: 1.0.8
    sphinxcontrib-blockdiag: 3.0.0
    sphinxcontrib-devhelp: 1.0.6
    sphinxcontrib-htmlhelp: 2.0.5
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 1.0.7
    sphinxcontrib-serializinghtml: 1.1.10
    stack-data: 0.6.3
    superqt: 0.6.3
    tables: 3.8.0
    tcia-utils: 1.5.1
    tifffile: 2024.1.30
    tinyarray: 1.2.4
    tornado: 6.4.1
    traitlets: 5.14.2
    typing-extensions: 4.12.2
    tzdata: 2024.1
    urllib3: 2.2.1
    wcwidth: 0.2.13
    webcolors: 1.13
    wheel: 0.43.0
    wheel-filename: 1.4.1
    widgetsnbextension: 4.0.11
    WMI: 1.5.1

Change History (9)

comment:1 by pett, 13 months ago

Cc: Tom Goddard added
Component: UnassignedSessions
Milestone: 1.9
Owner: set to Greg Couch
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionRestore session: LZ4F_decompress failed with code: ERROR_decompressionFailed

Also, maybe the "The history of data files opened in ChimeraX was unreadable" problem perhaps should be opened in a separate ticket?

comment:2 by Greg Couch, 13 months ago

Can you share the session file with me? This will be hard to debug with a reproducible test case. Since you are at UCSF, perhaps one of your colleagues can put the session file on the Wynton HPC cluster somewhere, and I can grab it.

comment:3 by Marcell.Zimanyi@…, 13 months ago

Hi Greg,

Thanks for taking a look at this! I attached the cxs file in this email. I have a wynton account, I can put it up there as well. My username is marcell. I made a folder with 777 permissions at this location where you can grab the cxs file as well.

/wynton/home/chenglab/marcell/marcell_sharing


[https://urldefense.proofpoint.com/v2/url?u=https-3A__urldefense.com_v3_-5F-5Fhttps-3A__res.cdn.office.net_assets_mail_file-2Dicon_png_generic-5F16x16.png-2A5DCMV-5Fpaper-5Ffigure-5Fmaking-5F3.cxs-5F-5F-3BJQ-21-21LQC6Cpwp-21s5iAAL7-5FAaa8NnliRrIcoTj1TlzEuVuUM4Hw9rI-2D7savOCs-2DyZGqTuSzkyTWdNJQPA2b5604OQ0RicbZfJ-2D9luPOGkL5NuNya1Pzvg-24&d=DwIF-g&c=euGZstcaTDllvimEN8b7jXrwqOf-v5A_CdpgnVfiiMM&r=CKzZmwKi9_YVvHng-0ezdJFE-0MROfpdFWLsI4CZgtQ&m=_kbLR2DiCTIbmw_XvoaVzgxk4i8rm2Z3vGMkI_ODxUWrOdVskOrvQOceDGfFhIv-&s=9-OHq6HFBTiRCy0fK8e7HydL6kJc3lx14LVKI01O7EU&e= <https://urldefense.proofpoint.com/v2/url?u=https-3A__urldefense.com_v3_-5F-5Fhttps-3A__ucsfonline-2Dmy.sharepoint.com_-3Au-3A_g_personal_marcell-5Fzimanyi-5Fucsf-5Fedu_EXj-5FhZY9OQVPs6fa5YA2EKMB8uQVbG9ocCgXExL-5FeUbJJQ-5F-5F-3B-21-21LQC6Cpwp-21s5iAAL7-5FAaa8NnliRrIcoTj1TlzEuVuUM4Hw9rI-2D7savOCs-2DyZGqTuSzkyTWdNJQPA2b5604OQ0RicbZfJ-2D9luPOGkL5NuNT7JqkJw-24&d=DwIF-g&c=euGZstcaTDllvimEN8b7jXrwqOf-v5A_CdpgnVfiiMM&r=CKzZmwKi9_YVvHng-0ezdJFE-0MROfpdFWLsI4CZgtQ&m=_kbLR2DiCTIbmw_XvoaVzgxk4i8rm2Z3vGMkI_ODxUWrOdVskOrvQOceDGfFhIv-&s=ORjxe0W4N69vjRjVvjZeA6GW7IBCPGsMsLLvyZ8iqHA&e=>

Best wishes,

Marcell
________________________________
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: Friday, September 13, 2024 1:21 PM
To: Couch, Gregory <gregc@cgl.ucsf.edu>; Zimanyi, Marcell <Marcell.Zimanyi@ucsf.edu>
Cc: goddard@cgl.ucsf.edu <goddard@cgl.ucsf.edu>
Subject: Re: [ChimeraX] #15942: Restore session: LZ4F_decompress failed with code: ERROR_decompressionFailed

!-------------------------------------------------------------------|
  This Message Is From an External Sender
  This message came from outside your organization.
|-------------------------------------------------------------------!

#15942: Restore session: LZ4F_decompress failed with code:
ERROR_decompressionFailed
----------------------------------------+------------------------
          Reporter:  marcell.zimanyi@…  |      Owner:  Greg Couch
              Type:  defect             |     Status:  assigned
          Priority:  normal             |  Milestone:  1.9
         Component:  Sessions           |    Version:
        Resolution:                     |   Keywords:
        Blocked By:                     |   Blocking:
Notify when closed:                     |   Platform:  all
           Project:  ChimeraX           |
----------------------------------------+------------------------
Comment (by Greg Couch):

 Can you share the session file with me?  This will be hard to debug with a
 reproducible test case.  Since you are at UCSF, perhaps one of your
 colleagues can put the session file on the Wynton HPC cluster somewhere,
 and I can grab it.
--
Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/15942#comment:2>
ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker

comment:4 by Greg Couch, 13 months ago

So I am able to replicate the problem with the session file. But I'm not sure yet if there's a solution. I was able to figure out that the session refers to several mrc files and later dies trying to restore a molecular surface. The mrc files are:

C:\Users\marce\Downloads\cryosparc_P1_J578_009_volume_map.mrc
C:\Users\marce\Documents\UCSF\CMV\volumes_and_masks\cryosparc_P1_J578_009_volume_map.mrc
C:\Users\marce\Documents\UCSF\CMV\volumes_and_masks\J578_CMVpr_only_denstiy.mrc
C:\Users\marce\Documents\UCSF\CMV\volumes_and_masks\J578_Fab_only_denstiy.mrc

comment:5 by Marcell.Zimanyi@…, 13 months ago

Hi Greg,

Great detective work. I moved the first map that was in my downloads folder into my documents folder while I had this ChimeraX session open, and it looks like I saved the cxs with the old filepath. I think that answers the question of why I can't open those cxs; thanks for figuring it out. I guess having a cxs file with a bad filepath in my history also makes it unreadable as well.

I think we can call the ticket closed, I'll just have to remember not to reference map files that I move around. Thanks for your help!

-Marcell

Last edited 13 months ago by Tom Goddard (previous) (diff)

comment:6 by Greg Couch, 13 months ago

Priority: normallow

The "RuntimeError: LZ4F_decompress failed with code: ERROR_decompressionFailed" still shouldn't happen. So I'm just lowering the priority of the ticket instead of closing it.

comment:7 by Tom Goddard, 13 months ago

Hi Marcell,

You can still open ChimeraX session files even if the map files they refer to have moved or are no longer available. When you open such a session it will pop up a file dialog saying what file is missing and allow you to choose the new location. You don't have to specify the new location, maybe you don't have the file, and it will still open the session.

So the error in restoring this session is something else. Greg says he reproduced it so I guess he would have the best idea of what that something else is. I'm not sure how the molecular surface calculation can fail, as Greg noted. We have seen the LZ4 decompression errors reported before and I always thought that was probably because it ran out of memory. But it could be a bug in the Python LZ4 compression library.

Tom

comment:8 by Greg Couch, 10 months ago

Milestone: 1.91.10

Ticket retargeted after milestone closed

comment:9 by Greg Couch, 5 months ago

Resolution: fixed
Status: assignedclosed

Nothing we can do, so eliminated the traceback when this occurs.

Note: See TracTickets for help on using tickets.