Bug 1382253

Summary: CentOS 7: python-re2 crashes with a segmentation fault (packages using it crash as well)
Product: [Fedora] Fedora EPEL Reporter: Mathias De Maré <mathias.demare>
Component: python-re2Assignee: Fedora Infrastructure SIG <infra-sig>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: epel7CC: infra-sig, kevin, mads, rbean, rhbugzilla
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-re2-1.0.5-1.fc25 python-re2-1.0.5-1.fc24 python-re2-1.0.5-1.fc23 python-re2-1.0.5-1.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-10-14 05:00:45 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
Add a C++11 patch so segfaulting no longer happens
none
Add a C++11 patch so segfaulting no longer happens -- with version bump and changelog change none

Description Mathias De Maré 2016-10-06 06:52:46 UTC
Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. Start 'python'
2. In the interactive prompt, type:
import re2
re2.search('foo', 'foobar')

You get:
“python” terminated by signal SIGSEGV (Address boundary error)

Actual results:


Expected results:


Additional info:

In gdb:

gdb python
GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-80.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> [^]
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>... [^]
Reading symbols from /usr/bin/python2.7...Reading symbols from /usr/bin/python2.7...(no debugging symbols found)...done.
(no debugging symbols found)...done.
Missing separate debuginfos, use: debuginfo-install python-2.7.5-34.el7.x86_64
(gdb) run
Starting program: /bin/python
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Python 2.7.5 (default, Nov 20 2015, 02:00:19)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import re2
>>> re2.search('foo', 'foobar')

Program received signal SIGSEGV, Segmentation fault.
0x00007fffeff8dde0 in _compile(_object*, _object*, _object*) () from /usr/lib64/python2.7/site-packages/_re2.so
(gdb) bt
#0 0x00007fffeff8dde0 in _compile(_object*, _object*, _object*) () from /usr/lib64/python2.7/site-packages/_re2.so
#1 0x00007ffff7af5aa4 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#2 0x00007ffff7af5860 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#3 0x00007ffff7af70bd in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#4 0x00007ffff7af71c2 in PyEval_EvalCode () from /lib64/libpython2.7.so.1.0
#5 0x00007ffff7b105ff in run_mod () from /lib64/libpython2.7.so.1.0
#6 0x00007ffff7b126b0 in PyRun_InteractiveOneFlags () from /lib64/libpython2.7.so.1.0
#7 0x00007ffff7b1289e in PyRun_InteractiveLoopFlags () from /lib64/libpython2.7.so.1.0
#8 0x00007ffff7b12f2e in PyRun_AnyFileExFlags () from /lib64/libpython2.7.so.1.0
#9 0x00007ffff7b23b9f in Py_Main () from /lib64/libpython2.7.so.1.0
#10 0x00007ffff6d50b15 in __libc_start_main () from /lib64/libc.so.6
#11 0x0000000000400721 in _start ()
(gdb) 

Also reported in https://bugs.centos.org/view.php?id=11220

This upstream changeset should fix the issue: https://github.com/facebook/pyre2/commit/97d175fe93ca61711024fbc2c71d03bced12236e

Comment 1 Mathias De Maré 2016-10-06 07:19:23 UTC
Created attachment 1207820 [details]
Add a C++11 patch so segfaulting no longer happens

Comment 2 Mathias De Maré 2016-10-06 07:31:37 UTC
Created attachment 1207835 [details]
Add a C++11 patch so segfaulting no longer happens -- with version bump and changelog change

Comment 3 Mads Kiilerich 2016-10-06 09:35:09 UTC
Sid, would you consider making a new upstream release?

Comment 4 Kevin Fenzi 2016-10-07 15:29:25 UTC
Yep. I can confirm this... I'm happy to carry a patch, unless another upstream release is going to happen soon?

Comment 5 Mathias De Maré 2016-10-09 10:50:09 UTC
1.0.5 is out, thanks to sid0 :-)

Note that there are hashes in the URL's on pypi now, so you can't just change the version to 1.0.5.
The 1.0.5 url is now https://pypi.python.org/packages/d3/6a/c52f8ba9a871a441dbfbb07b683b1e9f779c10924213d3fc1bb71b6055bb/fb-re2-1.0.5.tar.gz#md5=353846c025a1d4b1c00320994a7cee3d .

pypi.io does work: https://pypi.io/packages/source/f/fb-re2/fb-re2-1.0.5.tar.gz

Comment 6 Kevin Fenzi 2016-10-09 17:01:44 UTC
And you got it updated already. ;) Thanks!

Comment 7 Fedora Update System 2016-10-10 03:19:40 UTC
python-re2-1.0.5-1.el7 has been pushed to the Fedora EPEL 7 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-EPEL-2016-8205324ce4

Comment 8 Fedora Update System 2016-10-10 03:51:54 UTC
python-re2-1.0.5-1.fc24 has been pushed to the Fedora 24 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-2016-6a6e318934

Comment 9 Fedora Update System 2016-10-10 03:52:28 UTC
python-re2-1.0.5-1.fc23 has been pushed to the Fedora 23 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-2016-299a74d424

Comment 10 Fedora Update System 2016-10-10 04:27:06 UTC
python-re2-1.0.5-1.fc25 has been pushed to the Fedora 25 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-2016-57a9492885

Comment 11 Fedora Update System 2016-10-14 05:00:45 UTC
python-re2-1.0.5-1.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.

Comment 12 Fedora Update System 2016-10-18 15:54:13 UTC
python-re2-1.0.5-1.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2016-10-19 06:21:16 UTC
python-re2-1.0.5-1.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2016-10-25 05:49:20 UTC
python-re2-1.0.5-1.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.