Opened 9 months ago
Closed 9 months ago
#16662 closed defect (fixed)
xr true: A supplied object handle was invalid
Reported by: | Owned by: | Tom Goddard | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | VR | Version: | |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Windows-10-10.0.26100 ChimeraX Version: 1.10.dev202501160116 (2025-01-16 01:16:53 UTC) Description Replace this text with list of actions that caused this problem to occur Log: Startup Messages --- note | available bundle cache has not been initialized yet UCSF ChimeraX version: 1.10.dev202501160116 (2025-01-16) © 2016-2025 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > xr true started OpenXR rendering SpatialLabs Display Driver Traceback (most recent call last): File "C:\Program Files\ChimeraX 1.10.dev202501160116\bin\Lib\site- packages\chimerax\core\triggerset.py", line 149, in invoke return self._func(self._name, data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.10.dev202501160116\bin\Lib\site- packages\chimerax\vive\xr.py", line 786, in _next_frame self.process_controller_events() File "C:\Program Files\ChimeraX 1.10.dev202501160116\bin\Lib\site- packages\chimerax\vive\xr.py", line 823, in process_controller_events self.process_controller_buttons() File "C:\Program Files\ChimeraX 1.10.dev202501160116\bin\Lib\site- packages\chimerax\vive\xr.py", line 831, in process_controller_buttons e = xr.poll_next_event() ^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.10.dev202501160116\bin\Lib\site- packages\chimerax\vive\openxr.py", line 740, in poll_next_event self._poll_xr_events() # Update self._session_state to detect headset has lost focus ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.10.dev202501160116\bin\Lib\site- packages\chimerax\vive\openxr.py", line 385, in _poll_xr_events event_buffer = xr.poll_event(self._instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.10.dev202501160116\bin\Lib\site- packages\xr\functions.py", line 144, in poll_event raise result xr.exception.HandleInvalidError: A supplied object handle was invalid. Error processing trigger "new frame": xr.exception.HandleInvalidError: A supplied object handle was invalid. File "C:\Program Files\ChimeraX 1.10.dev202501160116\bin\Lib\site- packages\xr\functions.py", line 144, in poll_event raise result See log for complete Python traceback. OpenGL version: 3.3.0 NVIDIA 556.18 OpenGL renderer: NVIDIA RTX 4500 Ada Generation/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Python: 3.11.4 Locale: en_US.cp1252 Qt version: PyQt6 6.8.0, Qt 6.8.1 Qt runtime version: 6.8.1 Qt platform: windows Manufacturer: LENOVO Model: 30GUSJKD00 OS: Microsoft Windows 11 Pro (Build 26100) Memory: 68,325,134,336 MaxProcessMemory: 137,438,953,344 CPU: 28 Intel(R) Core(TM) i7-14700 OSLanguage: en-US Installed Packages: alabaster: 1.0.0 anyio: 4.8.0 appdirs: 1.4.4 asttokens: 3.0.0 auditwheel: 6.2.0 autocommand: 2.2.2 babel: 2.16.0 backports.tarfile: 1.2.0 beautifulsoup4: 4.12.3 blockdiag: 3.0.0 blosc2: 3.0.0 build: 1.2.1 certifi: 2024.12.14 cftime: 1.6.4.post1 charset-normalizer: 3.4.1 ChimeraX-AddCharge: 1.5.18 ChimeraX-AddH: 2.2.6 ChimeraX-AlignmentAlgorithms: 2.0.2 ChimeraX-AlignmentHdrs: 3.5 ChimeraX-AlignmentMatrices: 2.1 ChimeraX-Alignments: 2.16.2 ChimeraX-AlphaFold: 1.0.1 ChimeraX-AltlocExplorer: 1.1.2 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.1 ChimeraX-Atomic: 1.60 ChimeraX-AtomicLibrary: 14.1.11 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.4 ChimeraX-BasicActions: 1.1.2 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 3.0.0 ChimeraX-BondRot: 2.0.4 ChimeraX-BugReporter: 1.0.2 ChimeraX-BuildStructure: 2.13.1 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.4.0 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.3 ChimeraX-ColorActions: 1.0.5 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.8 ChimeraX-CommandLine: 1.2.5 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.10.dev202501160116 ChimeraX-CoreFormats: 1.2 ChimeraX-coulombic: 1.4.4 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.3 ChimeraX-Dicom: 1.2.7 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.4.1 ChimeraX-Hbonds: 2.5 ChimeraX-Help: 1.3 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.3 ChimeraX-ItemsInspection: 1.0.1 ChimeraX-IUPAC: 1.0 ChimeraX-KVFinder: 1.5.1 ChimeraX-Label: 1.1.14 ChimeraX-ListInfo: 1.2.2 ChimeraX-Log: 1.2 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.9.1 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-MatchMaker: 2.1.6 ChimeraX-MCopy: 1.0 ChimeraX-MDcrds: 2.7.2 ChimeraX-MedicalToolbar: 1.1 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1.1 ChimeraX-mmCIF: 2.14.2 ChimeraX-MMTF: 2.2 ChimeraX-ModelArchive: 1.0 ChimeraX-Modeller: 1.5.18 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-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.14 ChimeraX-OrthoPick: 1.0.1 ChimeraX-PDB: 2.7.7 ChimeraX-PDBBio: 1.0.1 ChimeraX-PDBLibrary: 1.0.4 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1.2 ChimeraX-ProfileGrids: 1.0.1 ChimeraX-PubChem: 2.2 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.2 ChimeraX-RemoteControl: 1.0 ChimeraX-RenderByAttr: 1.6.3 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.3.1 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.5.7 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.15 ChimeraX-Shape: 1.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.2.0 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-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.19.1 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.1 ChimeraX-TapeMeasure: 1.0 ChimeraX-TaskManager: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.2.3 ChimeraX-ToolshedUtils: 1.2.4 ChimeraX-Topography: 1.0 ChimeraX-ToQuest: 1.0 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.43 ChimeraX-Umap: 1.0 ChimeraX-uniprot: 2.3.1 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.4.4 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.5 contourpy: 1.3.1 coverage: 7.6.10 cxservices: 1.2.3 cycler: 0.12.1 Cython: 3.0.10 debugpy: 1.8.11 decorator: 5.1.1 docutils: 0.21.2 executing: 2.1.0 filelock: 3.15.4 fonttools: 4.55.3 funcparserlib: 2.0.0a0 glfw: 2.8.0 grako: 3.16.5 h11: 0.14.0 h5py: 3.12.1 html2text: 2024.2.26 httpcore: 1.0.7 httpx: 0.28.1 idna: 3.10 ihm: 1.3 imagecodecs: 2024.6.1 imagesize: 1.4.1 importlib_metadata: 8.0.0 importlib_resources: 6.4.0 inflect: 7.3.1 iniconfig: 2.0.0 ipykernel: 6.29.5 ipython: 8.26.0 ipywidgets: 8.1.5 jaraco.context: 5.3.0 jaraco.functools: 4.0.1 jaraco.text: 3.12.1 jedi: 0.19.1 Jinja2: 3.1.5 jupyter_client: 8.6.2 jupyter_core: 5.7.2 jupyterlab_widgets: 3.0.13 kiwisolver: 1.4.8 line_profiler: 4.1.3 lxml: 5.2.2 lz4: 4.3.3 MarkupSafe: 3.0.2 matplotlib: 3.9.2 matplotlib-inline: 0.1.7 more-itertools: 10.3.0 msgpack: 1.0.8 ndindex: 1.9.2 nest-asyncio: 1.6.0 netCDF4: 1.6.5 networkx: 3.3 nibabel: 5.2.0 nptyping: 2.5.0 numexpr: 2.10.2 numpy: 1.26.4 OpenMM: 8.2.0 openvr: 1.26.701 ordered-set: 4.1.0 packaging: 23.2 packaging: 24.1 ParmEd: 4.2.2 parso: 0.8.4 pep517: 0.13.1 pickleshare: 0.7.5 pillow: 10.4.0 pip: 24.2 pkginfo: 1.11.1 platformdirs: 4.3.6 platformdirs: 4.2.2 pluggy: 1.5.0 prompt_toolkit: 3.0.48 psutil: 6.0.0 pure_eval: 0.2.3 py-cpuinfo: 9.0.0 pycollada: 0.8 pydicom: 2.4.4 pyelftools: 0.31 Pygments: 2.18.0 pynmrstar: 3.3.5 pynrrd: 1.0.0 PyOpenGL: 3.1.7 PyOpenGL-accelerate: 3.1.7 pyopenxr: 1.0.3401 pyparsing: 3.2.1 pyproject_hooks: 1.2.0 PyQt6-commercial: 6.8.0 PyQt6-Qt6: 6.8.1 PyQt6-WebEngine-commercial: 6.8.0 PyQt6-WebEngine-Qt6: 6.8.1 PyQt6_sip: 13.9.1 pytest: 8.3.4 pytest-cov: 6.0.0 python-dateutil: 2.9.0.post0 pytz: 2024.2 pywin32: 306 pyzmq: 26.2.0 qtconsole: 5.5.2 QtPy: 2.4.2 qtshim: 1.1 RandomWords: 0.4.0 requests: 2.32.3 scipy: 1.14.0 setuptools: 72.1.0 sfftk-rw: 0.8.1 six: 1.16.0 sniffio: 1.3.1 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 soupsieve: 2.6 Sphinx: 8.0.2 sphinx-autodoc-typehints: 2.2.3 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 stack-data: 0.6.3 superqt: 0.6.3 tables: 3.10.1 tcia_utils: 1.5.1 tifffile: 2024.7.24 tinyarray: 1.2.4 tomli: 2.0.1 tornado: 6.4.2 traitlets: 5.14.3 typeguard: 4.3.0 typing_extensions: 4.12.2 typing_extensions: 4.12.2 tzdata: 2024.2 urllib3: 2.3.0 wcwidth: 0.2.13 webcolors: 24.6.0 wheel: 0.43.0 wheel: 0.43.0 wheel-filename: 1.4.1 widgetsnbextension: 4.0.13 WMI: 1.5.1 zipp: 3.19.2
Change History (4)
comment:1 by , 9 months ago
Component: | Unassigned → VR |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → xr true: A supplied object handle was invalid |
comment:2 by , 9 months ago
comment:3 by , 9 months ago
Log indicates user was connecting to flat panel stereo display
started OpenXR rendering SpatialLabs Display Driver
The same error happens closing SteamVR while using SteamLink with "xr on", ticket #16689.
comment:4 by , 9 months ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed.
If OpenXR connection is closed in now gives an clear error message saying that with no traceback.
Not sure if ChimeraX displays correctly in 3D to the stereo SpatialLabs View Pro 27" monitor, maybe not, maybe OpenXR just disconnects. Would only be able to debug that if I had this kind of monitor.
Note:
See TracTickets
for help on using tickets.
User tried to start VR session with "xr true" and it gave a invalid handle error trying to poll for events. To get this far it would have already made an OpenXR connection that gave no errors. The instance handle in the poll_event() call that gives the error is the connection to OpenXR. So it seems that maybe the OpenXR connection was closed but ChimeraX did not detect that and tried to continue using the handle. ChimeraX has code to detect that the session has been closed. But it looks like the closed session doesn't propagate up to have ChimeraX switch out of VR mode and it might keep on polling. Should test if that is the case and fix so it exits VR mode and says the OpenXR session was closed.