Bug 977284 - symbol lookup error 'pthread_atfork' while using tcmalloc
Summary: symbol lookup error 'pthread_atfork' while using tcmalloc
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: google-perftools
Version: el6
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Tom "spot" Callaway
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-06-24 08:30 UTC by Erik
Modified: 2013-08-01 20:42 UTC (History)
2 users (show)

Fixed In Version: gperftools-2.0-11.el6.3
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-08-01 20:42:49 UTC
Type: Bug


Attachments (Terms of Use)

Description Erik 2013-06-24 08:30:53 UTC
Description of problem:

Since the update of gperftools-libs from 2.0.3 to 2.0.11 we are getting a symbol lookup error. 

For instance when using the library in mysql 5.5, we see the following in /var/log/mysqld.log:

nohup: symbol lookup error: /usr/lib64/libtcmalloc_minimal.so.4: undefined symbol: pthread_atfork


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

2.0.11 (could be in earlier version as well). 


How reproducible:

Always. Configure tcmalloc as library in my.cnf using 



Steps to Reproduce:

Alternative 1 (using mysql):
1. configure in /etc/my.cnf (using oracle mysql 5.5 version)
   malloc-lib=/usr/lib64/libtcmalloc_minimal.so.4
2. restart mysql: /etc/init.d/mysql restart
3. mysql will refuse to start. Examine /var/log/mysqld.log


Alternative 2 (easier):
1. In a bash shell: 

   export LD_PRELOAD=/usr/lib64/libtcmalloc.so.4
2. cat ~/.bashrc # any file will do. 
3. screen will show symbol lookup error for pthread_atfork.

Actual results:

Symbol lookup error. 

Expected results:

Alternative 1: mysql starts
Alternative 2: output of file is shown. 

Additional info:

This broke after a recent update of the system packages. The problem manifests itself with the most recent packages of centos 6.4 and epel.

Comment 1 Erik 2013-06-24 19:15:45 UTC
I can confirm that rolling back to version 2.0-3 from 2.0-11 fixes the issue so it is indeed related to gperftools-libs only. 

I have worked around the issue by creating my own RPM that obsolets the gperftools-libs RPM and repackages the 2.0-3 files.

Comment 2 Joe Uhl 2013-06-26 19:44:36 UTC
We run MySQL with tcmalloc and hit this today.  Thankfully in a pre-production environment.  Installing MySQL and gperftools-libs on a fresh system results in a non-starting MySQL instance.  Downgrading also worked for us.

Comment 3 Fedora Update System 2013-07-10 20:23:01 UTC
gperftools-2.0-11.el6.3 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/gperftools-2.0-11.el6.3

Comment 4 Fedora Update System 2013-07-12 19:41:47 UTC
Package gperftools-2.0-11.el6.3:
* should fix your issue,
* was pushed to the Fedora EPEL 6 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing gperftools-2.0-11.el6.3'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2013-10836/gperftools-2.0-11.el6.3
then log in and leave karma (feedback).

Comment 5 Fedora Update System 2013-07-16 01:05:41 UTC
Package gperftools-2.0-11.el6.3, libunwind-1.1-2.el6:
* should fix your issue,
* was pushed to the Fedora EPEL 6 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing gperftools-2.0-11.el6.3 libunwind-1.1-2.el6'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2013-10836/libunwind-1.1-2.el6,gperftools-2.0-11.el6.3
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2013-08-01 20:42:49 UTC
gperftools-2.0-11.el6.3, libunwind-1.1-2.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.


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