Opened 6 months ago

Closed 6 months ago

#17529 closed defect (can't reproduce)

Qt thread/timer crash after (much) earlier Boltz error

Reported by: chimerax-bug-report@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Window Toolkit 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.dev202505010007 (2025-05-01 00:07:19 UTC)
Description
Last time you used ChimeraX it crashed.
Please describe steps that led to the crash here.
Windows fatal exception: code 0x8001010d

Current thread 0x00001750 (most recent call first):
  File "C:\Program Files\ChimeraX 1.10.dev202505010007\bin\Lib\site-packages\chimerax\ui\gui.py", line 368 in event_loop
  File "C:\Program Files\ChimeraX 1.10.dev202505010007\bin\Lib\site-packages\chimerax\core\__main__.py", line 1057 in init
  File "C:\Program Files\ChimeraX 1.10.dev202505010007\bin\Lib\site-packages\chimerax\core\__main__.py", line 1220 in 
  File "", line 88 in _run_code
  File "", line 198 in _run_module_as_main
===== Log before crash start =====
UCSF ChimeraX version: 1.10.dev202505010007 (2025-05-01)  
© 2016-2025 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open Q22633 format mmcif fromDatabase alphafold

Chain information for AlphaFold Q22633 #1  
---  
Chain | Description | UniProt  
A | 4-hydroxyphenylpyruvate dioxygenase | HPPD_CAEEL 1-393  
  
Color AlphaFold Q22633 by residue attribute pLDDT_score  

> ui tool show Boltz

> boltz predict protein Q22633 ligandSmiles
> O=C1C(C(C2=CC=C(C(F)(F)F)C=C2[N+]([O-])=O)=O)C(CCC1)=O(1),[Co+2](1) name
> Q22633 device gpu

Running Boltz prediction of protein with 393 residues, 2 ligands
O=C1C(C(C2=CC=C(C(F)(F)F)C=C2[N+]([O-])=O)=O)C(CCC1)=O, [Co+2]  
Using multiple sequence alignment server https://api.colabfold.com  
Please cite Boltz-1 Democratizing Biomolecular Interaction Modeling. BioRxiv
https://doi.org/10.1101/2024.11.19.624167 if you use these predictions.  

> sequence chain #1/A

Alignment identifier is 1/A  
Running boltz prediction failed with exit code 1:  
command:  
C:\Users\Ali/boltz\Scripts\boltz.exe predict
C:\Users\Ali/Desktop/boltz_Q22633\Q22633.yaml --write_full_pae
--use_msa_server --accelerator gpu  
stdout:  
Checking input data.  
Running predictions for 1 structure  
Processing input data.  
  
stderr:  
0%| | 0/1 [00:00", line 198, in _run_module_as_main  
File "", line 88, in _run_code  
File "C:\Users\Ali\boltz\Scripts\boltz.exe\\__main__.py", line 7, in   
File "C:\Users\Ali\boltz\Lib\site-packages\click\core.py", line 1157, in
__call__  
return self.main(*args, **kwargs)  
^^^^^^^^^^^^^^^^^^^^^^^^^^  
File "C:\Users\Ali\boltz\Lib\site-packages\click\core.py", line 1078, in main  
rv = self.invoke(ctx)  
^^^^^^^^^^^^^^^^  
File "C:\Users\Ali\boltz\Lib\site-packages\click\core.py", line 1688, in
invoke  
return _process_result(sub_ctx.command.invoke(sub_ctx))  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File "C:\Users\Ali\boltz\Lib\site-packages\click\core.py", line 1434, in
invoke  
return ctx.invoke(self.callback, **ctx.params)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File "C:\Users\Ali\boltz\Lib\site-packages\click\core.py", line 783, in invoke  
return __callback(*args, **kwargs)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File "C:\Users\Ali\boltz\Lib\site-packages\boltz\main.py", line 613, in
predict  
process_inputs(  
File "C:\Users\Ali\boltz\Lib\site-
packages\lightning_utilities\core\rank_zero.py", line 41, in wrapped_fn  
return fn(*args, **kwargs)  
^^^^^^^^^^^^^^^^^^^  
File "C:\Users\Ali\boltz\Lib\site-packages\boltz\main.py", line 416, in
process_inputs  
raise e  
File "C:\Users\Ali\boltz\Lib\site-packages\boltz\main.py", line 326, in
process_inputs  
target = parse_yaml(path, ccd)  
^^^^^^^^^^^^^^^^^^^^^  
File "C:\Users\Ali\boltz\Lib\site-packages\boltz\data\parse\yaml.py", line 57,
in parse_yaml  
return parse_boltz_schema(name, data, ccd)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File "C:\Users\Ali\boltz\Lib\site-packages\boltz\data\parse\schema.py", line
648, in parse_boltz_schema  
mol = AllChem.MolFromSmiles(seq)  
^^^^^^^^^^^^^^^^^^^^^^^^^^  
TypeError: No registered converter was able to produce a C++ rvalue of type
class std::basic_string,class
std::allocator > from this Python object of type list  
  

> boltz predict protein Q22633 ligandCcd CO(1) ligandSmiles
> O=C1C(C(C2=CC=C(C(F)(F)F)C=C2[N+]([O-])=O)=O)C(CCC1)=O(1) name Q22633 device
> gpu

Running Boltz prediction of protein with 393 residues, 2 ligands CO,
O=C1C(C(C2=CC=C(C(F)(F)F)C=C2[N+]([O-])=O)=O)C(CCC1)=O  
Using multiple sequence alignment server https://api.colabfold.com  
Boltz prediction completed in 127 seconds  

> open C:\Users\Ali/Desktop/boltz_Q22633_1\Q22633_model_0.cif logInfo false

Summary of feedback from opening
C:\Users\Ali/Desktop/boltz_Q22633_1\Q22633_model_0.cif  
---  
notes | Fetching CCD CO from https://files.wwpdb.org/pub/pdb/refdata/chem_comp/O/CO/CO.cif  
Fetching CCD LIG from
https://files.wwpdb.org/pub/pdb/refdata/chem_comp/G/LIG/LIG.cif  
  

> color bfactor #2 palette alphafold

3156 atoms, 395 residues, atom bfactor range 56.5 to 99  
Drag select of 28 residues, 1 bonds  

> select clear

> hide surfaces

> hide cartoons

> select clear

> show cartoons

> hide cartoons

> hbonds reveal true

858 hydrogen bonds found  

> hbonds reveal true

858 hydrogen bonds found  

> ~hbonds

> hbonds reveal true

858 hydrogen bonds found  

> ~hbonds

> hide surfaces

> hide atoms

> undo

> hide cartoons

> hide surfaces

> hide atoms

> nucleotides atoms

> style nucleic stick

Changed 0 atom styles  

> show atoms

> ~hbonds

> interfaces ~solvent

2 buried areas: #1/A #2/A 7352, #2/A #2/C 319  
Ignoring fixed y limits to fulfill fixed data aspect with adjustable data
limits.  
Ignoring fixed x limits to fulfill fixed data aspect with adjustable data
limits.  

> interfaces ~solvent

2 buried areas: #1/A #2/A 7352, #2/A #2/C 319  
Ignoring fixed y limits to fulfill fixed data aspect with adjustable data
limits.  
Ignoring fixed x limits to fulfill fixed data aspect with adjustable data
limits.  

> undo

> lighting simple

> view

> graphics silhouettes true

> lighting shadows true

> lighting simple

> undo

> hide cartoons

> show cartoons

> hide cartoons

> hide atoms

> undo

Ignoring fixed x limits to fulfill fixed data aspect with adjustable data
limits.  

> show #2 target m

> view #2 clip false

> hide surfaces

> hide cartoons

> hide atoms

> show atoms

> show cartoons

> hide atoms

> lighting soft

> lighting simple

> view

> ui tool show "Side View"

Ignoring fixed x limits to fulfill fixed data aspect with adjustable data
limits.  

> undo

> lighting full

> lighting flat

> lighting simple

> nucleotides atoms

> style nucleic stick

Changed 0 atom styles  

> style sphere

Changed 6289 atom styles  

> style stick

Changed 6289 atom styles  

> style sphere

Changed 6289 atom styles  

> hide cartoons

> show cartoons

> hide surfaces

> show atoms

> hide cartoons

Ignoring fixed x limits to fulfill fixed data aspect with adjustable data
limits.  
Ignoring fixed y limits to fulfill fixed data aspect with adjustable data
limits.  

> hide surfaces

> show atoms

> style stick

Changed 6289 atom styles  
Ignoring fixed y limits to fulfill fixed data aspect with adjustable data
limits.  

Device loss detected in Present()  

QObject::killTimer: Timers cannot be stopped from another thread  

QObject::~QObject: Timers cannot be stopped from another thread  


===== Log before crash end =====

Log:
UCSF ChimeraX version: 1.10.dev202505010007 (2025-05-01)  
© 2016-2025 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  




OpenGL version: 3.3.0 NVIDIA 566.24
OpenGL renderer: NVIDIA GeForce RTX 4060 Ti/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation

Python: 3.11.4
Locale: en_US.cp1252
Qt version: PyQt6 6.8.1, Qt 6.8.2
Qt runtime version: 6.8.2
Qt platform: windows

Manufacturer: Dell Inc.
Model: XPS 8960
OS: Microsoft Windows 11 Enterprise (Build 26100)
Memory: 68,352,729,088
MaxProcessMemory: 137,438,953,344
CPU: 28 Intel(R) Core(TM) i7-14700
OSLanguage: en-GB

Installed Packages:
    alabaster: 1.0.0
    appdirs: 1.4.4
    asttokens: 3.0.0
    auditwheel: 6.3.0
    babel: 2.17.0
    beautifulsoup4: 4.13.3
    blockdiag: 3.0.0
    blosc2: 3.3.2
    build: 1.2.2.post1
    certifi: 2025.4.26
    cftime: 1.6.4.post1
    charset-normalizer: 3.4.1
    ChimeraX-AddCharge: 1.5.18
    ChimeraX-AddH: 2.2.7
    ChimeraX-AlignmentAlgorithms: 2.0.2
    ChimeraX-AlignmentHdrs: 3.6.1
    ChimeraX-AlignmentMatrices: 2.1
    ChimeraX-Alignments: 2.20.1
    ChimeraX-AlphaFold: 1.0.1
    ChimeraX-AltlocExplorer: 1.1.2
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Aniso: 1.1.3
    ChimeraX-Arrays: 1.1
    ChimeraX-Atomic: 1.60.5
    ChimeraX-AtomicLibrary: 14.1.17
    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.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.2
    ChimeraX-Clashes: 2.3
    ChimeraX-ColorActions: 1.0.5
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.8
    ChimeraX-CommandLine: 1.2.6
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.10.dev202505010007
    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.1.4
    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.1
    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.6.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.2.1
    ChimeraX-MCopy: 1.0
    ChimeraX-MDcrds: 2.10.1
    ChimeraX-MedicalToolbar: 1.1
    ChimeraX-Meeting: 1.0.1
    ChimeraX-MLP: 1.1.1
    ChimeraX-mmCIF: 2.16
    ChimeraX-MMTF: 2.2
    ChimeraX-ModelArchive: 1.0
    ChimeraX-Modeller: 1.5.19
    ChimeraX-ModelPanel: 1.5.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
    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.1
    ChimeraX-OrthoPick: 1.0.1
    ChimeraX-PDB: 2.7.9
    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.3
    ChimeraX-ProfileGrids: 1.1.2
    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.3
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0.1
    ChimeraX-Segmentations: 3.5.7
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.17.1
    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.2
    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.45.1
    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.10
    contourpy: 1.3.2
    coverage: 7.8.0
    cxservices: 1.2.3
    cycler: 0.12.1
    Cython: 3.0.12
    debugpy: 1.8.14
    decorator: 5.2.1
    docutils: 0.21.2
    executing: 2.2.0
    filelock: 3.18.0
    fonttools: 4.57.0
    funcparserlib: 2.0.0a0
    glfw: 2.9.0
    grako: 3.16.5
    h5py: 3.13.0
    html2text: 2024.2.26
    idna: 3.10
    ihm: 2.2
    imagecodecs: 2024.6.1
    imagesize: 1.4.1
    iniconfig: 2.1.0
    ipykernel: 6.29.5
    ipython: 8.26.0
    ipywidgets: 8.1.6
    jedi: 0.19.1
    Jinja2: 3.1.6
    jupyter_client: 8.6.3
    jupyter_core: 5.7.2
    jupyterlab_widgets: 3.0.14
    kiwisolver: 1.4.8
    line_profiler: 4.2.0
    lxml: 5.3.1
    lz4: 4.4.4
    MarkupSafe: 3.0.2
    matplotlib: 3.10.1
    matplotlib-inline: 0.1.7
    msgpack: 1.1.0
    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
    packaging: 24.2
    ParmEd: 4.2.2
    parso: 0.8.4
    pep517: 0.13.1
    pickleshare: 0.7.5
    pillow: 10.4.0
    pip: 25.0.1
    pkginfo: 1.11.1
    platformdirs: 4.3.7
    pluggy: 1.5.0
    prompt_toolkit: 3.0.51
    psutil: 7.0.0
    pure_eval: 0.2.3
    py-cpuinfo: 9.0.0
    pycollada: 0.8
    pydicom: 2.4.4
    pyelftools: 0.32
    Pygments: 2.18.0
    pynmrstar: 3.3.5
    pynrrd: 1.0.0
    PyOpenGL: 3.1.9
    PyOpenGL-accelerate: 3.1.9
    pyopenxr: 1.1.4501
    pyparsing: 3.2.3
    pyproject_hooks: 1.2.0
    PyQt6-commercial: 6.8.1
    PyQt6-Qt6: 6.8.2
    PyQt6-WebEngine-commercial: 6.8.0
    PyQt6-WebEngine-Qt6: 6.8.2
    PyQt6_sip: 13.10.0
    pytest: 8.3.5
    pytest-cov: 6.1.1
    python-dateutil: 2.9.0.post0
    pytz: 2025.2
    pywin32: 310
    pyzmq: 26.4.0
    qtconsole: 5.5.2
    QtPy: 2.4.3
    qtshim: 1.1
    RandomWords: 0.4.0
    requests: 2.32.3
    roman-numerals-py: 3.1.0
    scipy: 1.14.0
    setuptools: 78.1.0
    sfftk-rw: 0.8.1
    six: 1.16.0
    snowballstemmer: 2.2.0
    sortedcontainers: 2.4.0
    soupsieve: 2.7
    Sphinx: 8.2.3
    sphinx-autodoc-typehints: 3.1.0
    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.7.1
    tables: 3.10.2
    tcia_utils: 1.5.1
    tifffile: 2025.3.13
    tinyarray: 1.2.4
    tornado: 6.4.2
    traitlets: 5.14.3
    typing_extensions: 4.13.2
    tzdata: 2025.2
    urllib3: 2.4.0
    wcwidth: 0.2.13
    webcolors: 24.11.1
    wheel: 0.45.1
    wheel-filename: 1.4.2
    widgetsnbextension: 4.0.14
    WMI: 1.5.1

Change History (5)

comment:1 by pett, 6 months ago

Component: UnassignedWindow Toolkit
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionQt thread/timer crash after (much) earlier Boltz error

comment:2 by Tom Goddard, 6 months ago

The message before the crash "Device loss detected in Present()" comes from Qt and the lost device is the graphics. It doesn't look like it is related to the earlier Boltz runs. There were 2 earlier Boltz runs. The first failed in Boltz itself, apparently it has a problem parsing the smiles string, maybe the [CO+2]. I'll test that. But the second Boltz run completes successfully and opens the resulting model. Not only that the user enabled GPU on Windows with Boltz so they must of pip uninstalled Torch and installed the CUDA version -- I'm impressed -- they are a power user.

comment:3 by Tom Goddard, 6 months ago

Confirmed that SMILES string [Co+2] is what causes the Boltz error. That is a valid SMILES string as shown on Pubchem https://pubchem.ncbi.nlm.nih.gov/compound/cobalt%28II%29#section=InChI

The trouble is the yaml file uses that unquoted and then it is interpetted as a list. It needs to be quoted in the yaml file.

comment:4 by Tom Goddard, 6 months ago

I fixed the Boltz unquoted smiles string.

comment:5 by Tom Goddard, 6 months ago

Resolution: can't reproduce
Status: assignedclosed

The crash looks unrelated to Boltz and is caused by use of Qt in a thread other than the main thread. Boltz prediction is not using additional threads.

Other bug reports have these logged message

QObject::killTimer: Timers cannot be stopped from another thread
QObject::~QObject: Timers cannot be stopped from another thread

The python faulthandler traceback only shows the main thread when the crash happened.

Note: See TracTickets for help on using tickets.