Opened 23 hours ago

Closed 16 hours ago

#20813 closed defect (can't reproduce)

KeyError volume.py, line 4382, in _update_drawings vset.remove(v)

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

Description

The following bug report has been submitted:
Platform:        Linux-6.8.0-136-generic-x86_64-with-glibc2.35
ChimeraX Version: 1.12 (2026-06-12 03:42:34 UTC)
Description
open HE_red.tif
open HE_green.tif
open HE_blue.tif
volume channels #1,2,3


then set step to 1 for each and volume

Log:
Startup Messages  
---  
warning | GBM is not supported with the current configuration. Fallback to Vulkan rendering in Chromium.  
  
UCSF ChimeraX version: 1.12 (2026-06-12)  
© 2016-2026 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> cd
> /home/donald/Desktop/shelter_server_donald/data/PanINs/TC_001/alignment/aligned_HE_volume

Current working directory is:
/home/donald/Desktop/shelter_server_donald/data/PanINs/TC_001/alignment/aligned_HE_volume  

> open HE_red.tif

Opened HE_red.tif as #1, grid size 818,739,102, pixel 1, shown at level 255,
step 2, values uint8  

> open HE_green.tif

Opened HE_green.tif as #2, grid size 818,739,102, pixel 1, shown at level 255,
step 2, values uint8  

> open HE_blue.tif

Opened HE_blue.tif as #3, grid size 818,739,102, pixel 1, shown at level 255,
step 2, values uint8  

> volume channels #1,2,3

Opened multi-channel map channels as #1, 3 channels, grid size 818,739,102,
pixel 1, shown at level 255, step 2, values uint8  

> volume #1 style image

Traceback (most recent call last):  
File "/usr/lib/ucsf-chimerax/lib/python3.11/site-
packages/chimerax/core/triggerset.py", line 149, in invoke  
return self._func(self._name, data)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File "/usr/lib/ucsf-chimerax/lib/python3.11/site-
packages/chimerax/map/volume.py", line 4382, in _update_drawings  
vset.remove(v)  
KeyError: <chimerax.map.volume.Volume object at 0x73abc015c250>  
  
Error processing trigger "graphics update":  
KeyError:  
  
File "/usr/lib/ucsf-chimerax/lib/python3.11/site-
packages/chimerax/map/volume.py", line 4382, in _update_drawings  
vset.remove(v)  
  
See log for complete Python traceback.  
  
Traceback (most recent call last):  
File "/usr/lib/ucsf-chimerax/lib/python3.11/site-
packages/chimerax/core/triggerset.py", line 149, in invoke  
return self._func(self._name, data)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File "/usr/lib/ucsf-chimerax/lib/python3.11/site-
packages/chimerax/map/volume.py", line 4382, in _update_drawings  
vset.remove(v)  
KeyError: <chimerax.map.volume.Volume object at 0x73abc018eb10>  
  
Error processing trigger "graphics update":  
KeyError:  
  
File "/usr/lib/ucsf-chimerax/lib/python3.11/site-
packages/chimerax/map/volume.py", line 4382, in _update_drawings  
vset.remove(v)  
  
See log for complete Python traceback.  
  




OpenGL version: 3.3.0 NVIDIA 560.35.03
OpenGL renderer: NVIDIA GeForce RTX 4090/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation

Python: 3.11.13
Locale: en_US.UTF-8
Qt version: PyQt6 6.10.2, Qt 6.10.0
Qt runtime version: 6.10.2
Qt platform: xcb

XDG_SESSION_TYPE=x11
DESKTOP_SESSION=ubuntu
XDG_SESSION_DESKTOP=ubuntu
XDG_CURRENT_DESKTOP=ubuntu:GNOME
DISPLAY=:1
Manufacturer: ASUS
Model: System Product Name
OS: Ubuntu 22.04
Architecture: 64bit ELF
Virtual Machine: none
CPU: 32 13th Gen Intel(R) Core(TM) i9-13900KF
Cache Size: 36864 KB
Memory:
	               total        used        free      shared  buff/cache   available
	Mem:           125Gi        25Gi        27Gi       382Mi        72Gi       100Gi
	Swap:          2.0Gi          0B       2.0Gi

Graphics:
	01:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:2684] (rev a1)	
	Subsystem: ZOTAC International (MCO) Ltd. Device [19da:3675]	
	Kernel driver in use: nvidia

Installed Packages:
    accessible-pygments: 0.0.5
    aiohappyeyeballs: 2.6.2
    aiohttp: 3.13.4
    aiosignal: 1.4.0
    alabaster: 1.0.0
    annotated-types: 0.7.0
    anyio: 4.13.0
    appdirs: 1.4.4
    asttokens: 3.0.1
    attrs: 26.1.0
    babel: 2.18.0
    beautifulsoup4: 4.13.5
    blockdiag: 3.0.0
    blosc2: 4.4.3
    bs4: 0.0.2
    build: 1.3.0
    certifi: 2026.5.20
    cftime: 1.6.5
    charset-normalizer: 3.4.7
    ChimeraX-AddCharge: 1.5.20
    ChimeraX-AddH: 2.2.8
    ChimeraX-AlignmentAlgorithms: 2.0.2
    ChimeraX-AlignmentHdrs: 3.6.2
    ChimeraX-AlignmentMatrices: 2.1
    ChimeraX-Alignments: 3.2
    ChimeraX-AlphaFold: 1.0.1
    ChimeraX-AltlocExplorer: 1.2
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Animations: 1.0
    ChimeraX-Aniso: 1.3.2
    ChimeraX-Arrays: 1.1
    ChimeraX-Atomic: 1.67.1
    ChimeraX-AtomicLibrary: 14.4
    ChimeraX-AtomSearch: 2.0.1
    ChimeraX-AxesPlanes: 2.4
    ChimeraX-BasicActions: 1.1.3
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 3.0.0
    ChimeraX-Boltz: 1.1
    ChimeraX-BondRot: 2.0.4
    ChimeraX-BugReporter: 1.0.2
    ChimeraX-BuildStructure: 2.13.1
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.6.0
    ChimeraX-ButtonPanel: 1.0.1
    ChimeraX-CageBuilder: 1.0.1
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.4.1
    ChimeraX-ChangeChains: 1.1
    ChimeraX-CheckWaters: 1.5
    ChimeraX-ChemGroup: 2.0.2
    ChimeraX-Clashes: 2.4
    ChimeraX-Cluster: 1.0
    ChimeraX-ColorActions: 1.0.5
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.8
    ChimeraX-CommandLine: 1.3.1
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.12
    ChimeraX-CoreFormats: 1.2
    ChimeraX-coulombic: 1.4.5
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0.1
    ChimeraX-DataFormats: 1.2.4
    ChimeraX-Dicom: 1.2.7
    ChimeraX-DistMonitor: 1.4.2
    ChimeraX-DockPrep: 1.2.2
    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.4.1
    ChimeraX-Hbonds: 2.5.3
    ChimeraX-Help: 1.3
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.4
    ChimeraX-ItemsInspection: 1.0.1
    ChimeraX-IUPAC: 1.0
    ChimeraX-KVFinder: 1.8.2
    ChimeraX-Label: 1.5
    ChimeraX-LightingGUI: 1.0
    ChimeraX-LinuxSupport: 1.0.1
    ChimeraX-ListInfo: 1.3.1
    ChimeraX-Log: 1.2.2
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.9.3
    ChimeraX-Map: 1.3
    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-MatchAlign: 1.2
    ChimeraX-MatchMaker: 2.4.1
    ChimeraX-MCopy: 1.0
    ChimeraX-MCPServer: 0.2.0
    ChimeraX-MDcrds: 2.19
    ChimeraX-MedicalToolbar: 1.1
    ChimeraX-Meeting: 1.0.1
    ChimeraX-Minimize: 1.3.9
    ChimeraX-MLP: 1.1.1
    ChimeraX-mmCIF: 2.16
    ChimeraX-MMTF: 2.2
    ChimeraX-ModelArchive: 1.0
    ChimeraX-Modeller: 1.5.23
    ChimeraX-ModelPanel: 1.6.1
    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.1
    ChimeraX-MutationScores: 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.15.4
    ChimeraX-OpenFold: 1.0
    ChimeraX-OrthoPick: 1.0.1
    ChimeraX-PDB: 2.7.13
    ChimeraX-PDBBio: 1.0.1
    ChimeraX-PDBLibrary: 1.0.5
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0.1
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.1.4
    ChimeraX-ProfileGrids: 1.6
    ChimeraX-PubChem: 2.2
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1.2
    ChimeraX-RemoteControl: 1.0
    ChimeraX-RenderByAttr: 1.8.2
    ChimeraX-RenumberResidues: 1.1
    ChimeraX-ResidueFit: 1.0.1
    ChimeraX-RestServer: 1.3.3
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 4.0
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.5.2
    ChimeraX-Scenes: 0.3.1
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0.3
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0.1
    ChimeraX-Segmentations: 3.5.12
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.18
    ChimeraX-Shape: 1.1
    ChimeraX-Shell: 1.0.1
    ChimeraX-Shortcuts: 1.2.1
    ChimeraX-ShowSequences: 1.0.3
    ChimeraX-SideView: 1.0.1
    ChimeraX-SimilarStructures: 1.0.1
    ChimeraX-Smiles: 2.1.2
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SNFG: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.19.3
    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.3
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-TaskManager: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.2.4
    ChimeraX-ToolshedUtils: 1.2.4
    ChimeraX-Topography: 1.0
    ChimeraX-ToQuest: 1.0
    ChimeraX-Tug: 1.0.1
    ChimeraX-UI: 1.50.8
    ChimeraX-Umap: 1.0
    ChimeraX-uniprot: 2.3.2
    ChimeraX-UnitCell: 1.0.1
    ChimeraX-ViewDock: 1.6.2
    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.5
    ChimeraX-Zone: 1.0.1
    click: 8.4.1
    colorama: 0.4.6
    comm: 0.2.3
    contourpy: 1.3.3
    coverage: 7.14.1
    cxservices: 1.2.3
    cycler: 0.12.1
    Cython: 3.2.4
    debugpy: 1.8.21
    decorator: 5.3.1
    distro: 1.9.0
    docutils: 0.21.2
    executing: 2.2.1
    filelock: 3.19.1
    fonttools: 4.63.0
    frozenlist: 1.8.0
    funcparserlib: 2.0.0a0
    glfw: 2.10.0
    grako: 3.16.5
    h11: 0.16.0
    h5py: 3.16.0
    html2text: 2025.4.15
    httpcore: 1.0.9
    httpx: 0.28.1
    httpx-sse: 0.4.3
    idna: 3.18
    ihm: 2.2
    imagecodecs: 2024.6.1
    imagesize: 2.0.0
    iniconfig: 2.3.0
    ipykernel: 7.1.0
    ipython: 9.9.0
    ipython_pygments_lexers: 1.1.1
    jedi: 0.19.2
    Jinja2: 3.1.6
    jsonschema: 4.26.0
    jsonschema-specifications: 2025.9.1
    jupyter_client: 8.8.0
    jupyter_core: 5.9.1
    kiwisolver: 1.5.0
    line_profiler: 5.0.0
    lxml: 6.0.2
    lz4: 4.3.2
    Markdown: 3.8.2
    MarkupSafe: 3.0.3
    matplotlib: 3.10.7
    matplotlib-inline: 0.2.2
    mcp: 1.18.0
    msgpack: 1.1.1
    multidict: 6.7.1
    narwhals: 2.22.1
    ndindex: 1.10.1
    nest-asyncio: 1.6.0
    netCDF4: 1.6.5
    networkx: 3.3
    nibabel: 5.2.0
    nptyping: 2.5.0
    numexpr: 2.14.1
    numpy: 1.26.4
    nvidia-nvjitlink-cu12: 12.9.86
    OpenMM: 8.4.0
    OpenMM-CUDA-12: 8.4.0
    openvr: 1.26.701
    packaging: 25.0
    ParmEd: 4.2.2
    parso: 0.8.7
    pep517: 0.13.1
    pexpect: 4.9.0
    pickleshare: 0.7.5
    pillow: 11.3.0
    pip: 25.2
    pkginfo: 1.12.1.2
    platformdirs: 4.10.0
    plotly: 6.8.0
    pluggy: 1.6.0
    prompt_toolkit: 3.0.52
    propcache: 0.5.2
    psutil: 7.0.0
    ptyprocess: 0.7.0
    pure_eval: 0.2.3
    py-cpuinfo: 9.0.0
    pybind11: 3.0.1
    pycollada: 0.8
    pydantic: 2.13.4
    pydantic-settings: 2.14.1
    pydantic_core: 2.46.4
    pydata-sphinx-theme: 0.18.0
    pydicom: 2.4.4
    Pygments: 2.18.0
    pynmrstar: 3.5.1
    pynrrd: 1.0.0
    PyOpenGL: 3.1.10
    PyOpenGL-accelerate: 3.1.10
    pyopenxr: 1.1.4501
    pyparsing: 3.3.2
    pyproject_hooks: 1.2.0
    PyQt6: 6.10.2
    PyQt6-Qt6: 6.10.2
    PyQt6-WebEngine: 6.10.0
    PyQt6-WebEngine-Qt6: 6.10.2
    PyQt6_sip: 13.10.3
    pytest: 9.0.3
    pytest-cov: 7.1.0
    python-dateutil: 2.9.0.post0
    python-dotenv: 1.2.2
    python-multipart: 0.0.32
    pyzmq: 27.1.0
    qtconsole: 5.7.0
    QtPy: 2.4.3
    qtshim: 1.2.2
    RandomWords: 0.4.0
    referencing: 0.37.0
    requests: 2.32.5
    roman-numerals: 4.1.0
    rpds-py: 2026.5.1
    scipy: 1.14.0
    setuptools: 80.9.0
    sfftk-rw: 0.8.1
    six: 1.17.0
    snowballstemmer: 3.1.1
    sortedcontainers: 2.4.0
    soupsieve: 2.8.4
    Sphinx: 9.0.4
    sphinx-autodoc-typehints: 3.6.1
    sphinxcontrib-applehelp: 2.0.0
    sphinxcontrib-blockdiag: 3.0.0
    sphinxcontrib-devhelp: 2.0.0
    sphinxcontrib-htmlhelp: 2.1.0
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 2.0.0
    sphinxcontrib-serializinghtml: 2.0.0
    sse-starlette: 3.4.4
    stack-data: 0.6.3
    starlette: 1.3.0
    superqt: 0.7.6
    tables: 3.10.2
    tcia_utils: 3.2.1
    threadpoolctl: 3.6.0
    tifffile: 2025.3.13
    tinyarray: 1.2.5
    tornado: 6.5.7
    tqdm: 4.68.2
    traitlets: 5.14.3
    typing-inspection: 0.4.2
    typing_extensions: 4.15.0
    Unidecode: 1.4.0
    urllib3: 2.7.0
    uvicorn: 0.49.0
    wcwidth: 0.8.1
    webcolors: 24.11.1
    wheel: 0.45.1
    wheel-filename: 1.4.2
    yarl: 1.24.2

Change History (2)

comment:1 by Tom Goddard, 16 hours ago

Component: UnassignedVolume Data
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionKeyError volume.py, line 4382, in _update_drawings vset.remove(v)

comment:2 by Tom Goddard, 16 hours ago

Resolution: can't reproduce
Status: assignedclosed

Opening 3 different maps of the same size then making them into a multichannel map then showing as image style, and switching step size from 2 to 1 does not generate this error for me on Mac.

I don't see how this error can happen unless there is some multithreading issue and VolumeUpdateManager._update_drawings() is entered twice at the same time. The key error is removing from the set of all volumes that need updating, and the missing volume is in the set of displayed volumes that need updating. The volumes that need updating appears to always be a superset of the displayed volumes that need updating.

Note: See TracTickets for help on using tickets.