Bug 1861558

Summary: Pymol 2.4.0 crashes when loading structure or session
Product: [Fedora] Fedora Reporter: Sebastian Keller <sebastian-keller>
Component: pymolAssignee: Antonio T. sagitter <trpost>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 32CC: sergio, trpost
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: pymol-2.4.0-3.fc31 pymol-2.4.0-3.fc32 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-08-07 01:08:36 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Patch to fix the crash none

Description Sebastian Keller 2020-07-29 00:13:26 UTC
Created attachment 1702738 [details]
Patch to fix the crash

Description of problem:
Pymol crashes when loading a structure or session, which renders pymol basically unusable. This crash is caused by a combination of a bug in pymol 2.4.0 and being compiled with "-D_GLIBCXX_ASSERTIONS". For details please see the upstream issue I filed about this:
https://github.com/schrodinger/pymol-open-source/issues/119


Version-Release number of selected component (if applicable):
pymol-2.4.0-1.fc32


How reproducible:
Reliably


Steps to Reproduce:
1. start pymol
2. run "fetch 1fcn"


Actual results:
pymol process aborts with the following error message:
/usr/include/c++/10/bits/stl_vector.h:1045: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = ObjectMolecule*; _Alloc = std::allocator<ObjectMolecule*>; std::vector<_Tp, _Alloc>::reference = ObjectMolecule*&; std::vector<_Tp, _Alloc>::size_type = long unsigned int]: Assertion '__builtin_expect(__n < this->size(), true)' failed.


Expected results:
A protein structure to be shown


Additional info:
I've attached a simple patch that fixes the issue for me. Alternatively a backport of the upstream commit that fixed the bug as a side effect of a larger refactor could be used:
https://github.com/schrodinger/pymol-open-source/commit/09413be126569173129928de2ab67d38df4f8e1f

Comment 1 Antonio T. sagitter 2020-07-29 10:41:38 UTC
Thank you very much Sebastian.
I'll add the patch within next 12 h.

Comment 2 Fedora Update System 2020-07-29 17:59:14 UTC
FEDORA-2020-de575db525 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-de575db525

Comment 3 Fedora Update System 2020-07-29 17:59:15 UTC
FEDORA-2020-f0019484ef has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-f0019484ef

Comment 4 Fedora Update System 2020-07-30 19:41:45 UTC
FEDORA-2020-de575db525 has been pushed to the Fedora 31 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-de575db525`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-de575db525

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 5 Fedora Update System 2020-07-30 19:55:00 UTC
FEDORA-2020-f0019484ef has been pushed to the Fedora 32 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-f0019484ef`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-f0019484ef

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2020-08-07 01:08:36 UTC
FEDORA-2020-de575db525 has been pushed to the Fedora 31 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 7 Fedora Update System 2020-08-07 01:18:57 UTC
FEDORA-2020-f0019484ef has been pushed to the Fedora 32 stable repository.
If problem still persists, please make note of it in this bug report.