LP #1171755: libmysqlclient_r.so.16 missing gzopen symbol for Percona-Server-shared-compat-55
Description
Environment
Smart Checklist
Activity

lpjirasync January 24, 2018 at 5:43 AM
**Comment from Launchpad by: Valerii Kravchuk on: 13-05-2013 18:00:14
I do not see shared-compat RPM for 5.6.10 at http://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-5.6.10-alpha60.2/RPM/rhel6/x86_64/, so I assume 5.6.x is (not yet?) affected.

lpjirasync January 24, 2018 at 5:42 AM
**Comment from Launchpad by: Raghavendra D Prabhu on: 06-05-2013 10:53:22
So, it looks like the libmysqlclient is linked against zlib (than
using the bundled one) in 5.5.30.
libz.so.1 => /lib64/libz.so.1 (0x00007f6eaf918000)
For an older one,
nm -D libmysqlclient_r.so.16 | grep -i gzop
00000000000c70c0 T gzopen
ldd libmysqlclient_r.so.16
linux-vdso.so.1 => (0x00007fffc47ff000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fb771232000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fb770ffb000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fb770de1000)
libm.so.6 => /lib64/libm.so.6 (0x00007fb770b5d000)
libc.so.6 => /lib64/libc.so.6 (0x00007fb7707ca000)
/lib64/ld-linux-x86-64.so.2 (0x00000037e3400000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007fb770567000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fb770363000)
(The above is for 5.5.27 and the gzopen used there is the zlib
present bundled in mysql sources).
So somewhere between those versions, the linking/building has
changed.
Now, since zlib provides those symbols, mydumper should ideally
link against zlib directly. But, what function exported by
libmysqlclient is called by --compress in mydumper - that should
have linked it.
@David,
As a workaround, can you try building mydumper against zlib – -lz?

lpjirasync January 24, 2018 at 5:42 AM
**Comment from Launchpad by: David Busby on: 06-05-2013 10:32:43
Per IRC Discussion for 5.5.30:
—
[root@localhost ~]# nm -D /usr/lib64/libmysqlclient_r.so.16 | grep -i gzop
nm -D /usr/lib64/libmysqlclient_r.so.16 | grep -i gzop
[root@localhost ~]# rpm -qa | grep Percona
rpm -qa | grep Percona
Percona-Server-shared-compat-5.5.30-rel30.2.508.rhel6.x86_64
[root@localhost ~]# ldd /usr/lib64/libmysqlclient_r.so.16
ldd /usr/lib64/libmysqlclient_r.so.16
linux-vdso.so.1 => (0x00007fff9b048000)
librt.so.1 => /lib64/librt.so.1 (0x00007f6eb0430000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6eb0210000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f6eaffd8000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f6eafdb8000)
libm.so.6 => /lib64/libm.so.6 (0x00007f6eafb30000)
libz.so.1 => /lib64/libz.so.1 (0x00007f6eaf918000)
libc.so.6 => /lib64/libc.so.6 (0x00007f6eaf580000)
/lib64/ld-linux-x86-64.so.2 (0x00007f6eb09b0000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f6eaf318000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f6eaf110000)
—

lpjirasync January 24, 2018 at 5:42 AM
**Comment from Launchpad by: David Busby on: 06-05-2013 09:23:07
Please advise if any more information is required on this issue; at this time it is becoming an increasing issue with compilation of our internal binaries.

lpjirasync January 24, 2018 at 5:42 AM
**Comment from Launchpad by: David Busby on: 29-04-2013 09:08:30
Added a short 1:58 screen cast highlighting this issue.
Details
Assignee
UnassignedUnassignedReporter
lpjirasynclpjirasync(Deactivated)Labels
Components
Priority
Low
Details
Details
Assignee
Reporter

Labels
Components
Priority
Smart Checklist
Open Smart Checklist
Smart Checklist
Open Smart Checklist
Smart Checklist

**Reported in Launchpad by David Busby last update 14-05-2013 03:22:24
We note that when running mydumper compiled against Percona-Server-shared-51 with --compress option, with the library provided by Percona-Server-shared-compat the error 'symbol gzopen not defined in file libmysqlclient_r.so.16' occurs.
This is not the case then the library from Percona-Server-shared-51 is used.
1) Compiling against the .16 libraries provided by Percona-Server-shared-51 and running against them works without issue.
2) Compiling against the .18 libraries provided by Percona-Server-shared-compat-55 and running against them works without issue.
3) Compiling against the .16 libraries provided by Percona-Server-shared-51 and running against .16 libraries from Percona-Server-shared-compat-55 throws the error:
'symbol gzopen not defined in file libmysqlclient_r.so.16'