Bug 1577613 - Recoll GUI crashes on startup
Summary: Recoll GUI crashes on startup
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: recoll
Version: 28
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Terje Røsten
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1541121 1567587 1582942 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-05-13 13:28 UTC by Jean-Francois Dockes
Modified: 2018-06-17 13:09 UTC (History)
8 users (show)

Fixed In Version: recoll-1.23.7-3.fc28 recoll-1.23.7-3.fc27
Clone Of:
Environment:
Last Closed: 2018-05-17 12:49:11 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Fix c++ vector allocation (353 bytes, patch)
2018-05-13 16:20 UTC, Jean-Francois Dockes
no flags Details | Diff
File: backtrace (34.18 KB, text/plain)
2018-05-16 21:11 UTC, Corinna Blau
no flags Details

Description Jean-Francois Dockes 2018-05-13 13:28:11 UTC
Description of problem: Recoll GUI crashes on startup

Version-Release number of selected component (if applicable): 1.23.7-2.fc28

How reproducible: always


Steps to Reproduce: 1. Start the GUI

Actual results:

/usr/include/c++/8/bits/stl_vector.h:932: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = regmatch_t; _Alloc = std::allocator<regmatch_t>; std::vector<_Tp, _Alloc>::reference = regmatch_t&; std::vector<_Tp, _Alloc>::size_type = long unsigned int]: Assertion '__builtin_expect(__n < this->size(), true)' failed.
Aborted (core dumped)

This was reported there, with a little more detail:
https://opensourceprojects.eu/p/recoll1/tickets/45/

The code built 'by hand' (without the additional rpm build flags) works fine.

The reporting user indicates a workaround by slightly changing the code in a way which should be equivalent to the existing code, which is, as far as I can see, correct. As they do not indicate how the code was rebuilt, the change in behaviour could be due to the different build method.

The array is of size 2, so there should be no problem accessing the first element (meaning the assertion "__n < this->size()" should not fail as far as I can see).

Comment 1 Terje Røsten 2018-05-13 14:09:02 UTC
Recompiling RPM with patch added did not help. I still get:

/usr/include/c++/8/bits/stl_vector.h:932: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = regmatch_t; _Alloc = std::allocator<regmatch_t>; std::vector<_Tp, _Alloc>::reference = regmatch_t&; std::vector<_Tp, _Alloc>::size_type = long unsigned int]: Assertion '__builtin_expect(__n < this->size(), true)' failed.
zsh: abort (core dumped)  recoll

Comment 2 Terje Røsten 2018-05-13 14:18:27 UTC
It don't crash in Fedora 27 (same spec file used).

Comment 3 Jean-Francois Dockes 2018-05-13 16:20:37 UTC
Created attachment 1435749 [details]
Fix c++ vector allocation

Comment 4 Jean-Francois Dockes 2018-05-13 16:22:09 UTC
It was a recoll issue actually. It had no consequences, but it triggered an assertion activated by the _GLIBCXX_ASSERTIONS flag (maybe new in Fedora 28?). I just attached a patch.

Comment 5 Terje Røsten 2018-05-13 20:52:56 UTC
Thanks! Yes, _GLIBCXX_ASSERTIONS is new in F28.

Comment 6 Fedora Update System 2018-05-14 05:34:11 UTC
recoll-1.23.7-3.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2018-8c47d084e9

Comment 7 Fedora Update System 2018-05-14 05:34:22 UTC
recoll-1.23.7-3.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-ff500f5c32

Comment 8 Fedora Update System 2018-05-14 19:17:01 UTC
recoll-1.23.7-3.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-8c47d084e9

Comment 9 Fedora Update System 2018-05-14 20:39:12 UTC
recoll-1.23.7-3.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-ff500f5c32

Comment 10 hannes 2018-05-16 05:31:10 UTC
*** Bug 1567587 has been marked as a duplicate of this bug. ***

Comment 11 Corinna Blau 2018-05-16 21:11:25 UTC
Similar problem has been detected:

...just trying to start recoll

reporter:       libreport-2.9.5
backtrace_rating: 3
cmdline:        recoll
crash_function: std::__replacement_assert
executable:     /usr/bin/recoll
journald_cursor: s=82cd155ff80547be9f90f946121191be;i=aae9f;b=0b094f95f2f1441da9ceedaf8ffe88c9;m=3aeec3050;t=56c5903d22cac;x=67b7cb8c456a494f
kernel:         4.16.8-300.fc28.x86_64
package:        recoll-1.23.7-2.fc28
reason:         recoll killed by SIGABRT
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            1000

Comment 12 Corinna Blau 2018-05-16 21:11:29 UTC
Created attachment 1437605 [details]
File: backtrace

Comment 13 Fedora Update System 2018-05-17 12:49:11 UTC
recoll-1.23.7-3.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.

Comment 14 Terje Røsten 2018-05-21 10:40:06 UTC
*** Bug 1541121 has been marked as a duplicate of this bug. ***

Comment 15 Fedora Update System 2018-05-23 15:58:33 UTC
recoll-1.23.7-3.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.

Comment 16 Terje Røsten 2018-06-17 13:09:37 UTC
*** Bug 1582942 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.