Bug#918988: AW: Bug#918988: AW: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
to 18. huhtik. 2019 klo 11.27 Daniel Högele - adelphi (hoeg...@adelphi.de) kirjoitti: > > >Maybe if you have apache compiled with the version X of the library, > and then you upgrade Apache but not keeping in sync the libraries if > might break down. > > Never compiled anything. Just simple "apt install" from debian repositories. I mean that you installed form Debian repos binary revision X built with Y, and then upgraded Y but binary X stays the same. So something is compiled with some versions by Debian, and then you get problems when you mix and match. Proper dependency declarations should however automatically mitigate issues like this. > >With the information provided I cannot reproduce the issue or debug it, > >sorry. > > How can we help you? What information do you need? Bernard an me are not the > only one, having this issue. See: > http://ask.ocsinventory-ng.org/10396/http-error-500-after-system-upgrade-mariadb > http://ask.ocsinventory-ng.org/10571/child-exit-signal-segmentation-fault-11 > > Any recommended tests, e.g. uninstall / reinstall apache + mariaDB? If you can write down steps for me on how to reproduce the error it would help. Fill in here: docker run -it debian:jessie bash # Which Debian release did you start with? apt-get update apt-get install X Y Z # What software did you have installed? echo "X hold" | dpkg --set-selections # What software did you not update? service apache2 restart curl localhost/x # what works sed 's/jessie/buster/g' -i /etc/apt/sources.list apt-get update && apt-get dist-upgrade curl localhost/x # what stopped working?
Bug#918988: AW: Bug#918988: AW: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
>Maybe if you have apache compiled with the version X of the library, and then you upgrade Apache but not keeping in sync the libraries if might break down. Never compiled anything. Just simple "apt install" from debian repositories. >With the information provided I cannot reproduce the issue or debug it, sorry. How can we help you? What information do you need? Bernard an me are not the only one, having this issue. See: http://ask.ocsinventory-ng.org/10396/http-error-500-after-system-upgrade-mariadb http://ask.ocsinventory-ng.org/10571/child-exit-signal-segmentation-fault-11 Any recommended tests, e.g. uninstall / reinstall apache + mariaDB?
Bug#918988: AW: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
> >This is probably the core issue. Does it start working if you run 'apt > >remove libmysqlclient18' > > No, it did not start working. Still getting errors in apache log: > [Wed Apr 17 15:42:14.536746 2019] [core:notice] [pid 22785] AH00052: child > pid 55325 exit signal Segmentation fault (11) I am out of ideas and there is no setup I can replicate and debug the issue myself. Maybe if you have apache compiled with the version X of the library, and then you upgrade Apache but not keeping in sync the libraries if might break down. With the information provided I cannot reproduce the issue or debug it, sorry.
Bug#918988: AW: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
>This is probably the core issue. Does it start working if you run 'apt remove >libmysqlclient18' No, it did not start working. Still getting errors in apache log: [Wed Apr 17 15:42:14.536746 2019] [core:notice] [pid 22785] AH00052: child pid 55325 exit signal Segmentation fault (11)
Bug#918988: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
> >What does 'dpkg -S /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18' say? > libmysqlclient18:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 > > > > For the reference: It not a clean install! It’s a several years old system. > First install was Debian 6 and upgraded three times via dist-upgrade: > 6->7->8->9 This is probably the core issue. Does it start working if you run 'apt remove libmysqlclient18' or just /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 so that there are no conflicting symbols?
Bug#918988: libmariadbclient18: conflict with libmysqlclient18
Same problem here! Several tools are no longer working, since we have to hold back the update (e.g. OCS Inventory, Nagios Thruk). nm -D /usr/lib/x86_64-linux-gnu/libmariadbclient.so.18 | egrep 'lib(mariadb|mysql)client_18' A libmariadbclient_18 nm -D /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 | egrep 'lib(mariadb|mysql)client_18' A libmysqlclient_18 dpkg -S /usr/lib/x86_64-linux-gnu/libmysql* libmysqlclient-dev: /usr/lib/x86_64-linux-gnu/libmysqlclient.a libmysqlclient-dev: /usr/lib/x86_64-linux-gnu/libmysqlclient_r.a libmysqlclient-dev: /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so libmysqlclient18:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18 libmysqlclient18:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18.0.0 libmysqlclient-dev: /usr/lib/x86_64-linux-gnu/libmysqlclient.so libmysqlclient18:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 libmysqlclient18:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0 dpkg -S /usr/lib/x86_64-linux-gnu/libmaria* libmariadbclient18:amd64: /usr/lib/x86_64-linux-gnu/libmariadbclient.so.18 libmariadbclient18:amd64: /usr/lib/x86_64-linux-gnu/libmariadbclient.so.18.0.0 >What does 'dpkg -S /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18' say? libmysqlclient18:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 For the reference: It not a clean install! It's a several years old system. First install was Debian 6 and upgraded three times via dist-upgrade: 6->7->8->9 Do you need more information? Daniel
Bug#918988: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
Contro: tags -1 moreinfo Hello! pe 11. tammik. 2019 klo 16.27 Bernard Massot (bernard.mas...@u-psud.fr) kirjoitti: ... > After upgrading libmariadbclient18 from 10.1.26-0+deb9u1 to > 10.1.37-0+deb9u1, requests to the OCS inventory server were making Apache > crash, leaving "child pid exit signal Segmentation fault (11)" > messages in Apache error log files. As a result, Apache was returning > 500 HTTP error instead of expected response from OCS inventory. ... > * with 10.1.37-0+deb9u1: > $ nm -D /usr/lib/x86_64-linux-gnu/libmariadbclient.so.18 | egrep > 'lib(mariadb|mysql)client_18' > A libmariadbclient_18 > A libmysqlclient_18 > $ nm -D /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 | egrep > 'lib(mariadb|mysql)client_18' > A libmysqlclient_18 Where did you get the /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 from? What does 'dpkg -S /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18' say? According to https://packages.debian.org/search?searchon=contents=libmysqlclient.so.18=path=stable=any Debian stable has no such file.
Bug#918988: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
For the record, state in mariadb-10.3 in unstable: # nm -D /usr/lib/x86_64-linux-gnu/libmariadb.so.3 | egrep 'lib(mariadb|mysql)client_' A libmariadbclient_18 A libmysqlclient_18 # nm -D /usr/lib/x86_64-linux-gnu/libmariadb.so.3 | egrep 'lib(mariadb|mysql)_' A libmariadb_3 # dpkg -S /usr/lib/x86_64-linux-gnu/libma* /usr/lib/x86_64-linux-gnu/libmy* libmariadb-dev: /usr/lib/x86_64-linux-gnu/libmariadb.so libmariadb3:amd64: /usr/lib/x86_64-linux-gnu/libmariadb.so.3 libmariadb-dev: /usr/lib/x86_64-linux-gnu/libmariadbclient.a libmariadb-dev: /usr/lib/x86_64-linux-gnu/libmariadbclient.so libmariadb-dev-compat:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient.a libmariadb-dev-compat:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient.so libmariadb-dev-compat:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient_r.a libmariadb-dev-compat:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so libmariadb-dev: /usr/lib/x86_64-linux-gnu/libmysqlservices.a # find /usr/lib/x86_64-linux-gnu/libma* -ls 11162 4 lrwxrwxrwx 1 root root 15 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmariadb.so -> libmariadb.so.3 7973332 -rw-r--r-- 1 root root 335984 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmariadb.so.3 11149460 -rw-r--r-- 1 root root 467280 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmariadbclient.a 11163 4 lrwxrwxrwx 1 root root 15 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmariadbclient.so -> libmariadb.so.3 # find /usr/lib/x86_64-linux-gnu/libmy* -ls 11177 4 lrwxrwxrwx 1 root root 18 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmysqlclient.a -> libmariadbclient.a 11178 4 lrwxrwxrwx 1 root root 15 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmysqlclient.so -> libmariadb.so.3 11179 4 lrwxrwxrwx 1 root root 18 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmysqlclient_r.a -> libmariadbclient.a 11180 4 lrwxrwxrwx 1 root root 15 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so -> libmariadb.so.3 11150 20 -rw-r--r-- 1 root root19430 Apr 1 20:05 /usr/lib/x86_64-linux-gnu/libmysqlservices.a
Bug#918988: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
On a clean Stretch installation the shared libs should look like this: $ dpkg -S /usr/lib/x86_64-linux-gnu/libmysql* libmariadbclient-dev-compat:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient.so root@05fcb1ee5880:/build# dpkg -S /usr/lib/x86_64-linux-gnu/libmys* libmariadbclient-dev-compat:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient.so libmariadbclient-dev-compat:amd64: /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so libmariadbd-dev:amd64: /usr/lib/x86_64-linux-gnu/libmysqld.a libmariadbd-dev:amd64: /usr/lib/x86_64-linux-gnu/libmysqld.so libmariadbd18:amd64: /usr/lib/x86_64-linux-gnu/libmysqld.so.18 libmariadbclient-dev: /usr/lib/x86_64-linux-gnu/libmysqlservices.a $ dpkg -S /usr/lib/x86_64-linux-gnu/libmaria* libmariadbclient-dev: /usr/lib/x86_64-linux-gnu/libmariadbclient.a libmariadbclient-dev: /usr/lib/x86_64-linux-gnu/libmariadbclient.so libmariadbclient18:amd64: /usr/lib/x86_64-linux-gnu/libmariadbclient.so.18 libmariadbclient18:amd64: /usr/lib/x86_64-linux-gnu/libmariadbclient.so.18.0.0 libmariadbclient-dev: /usr/lib/x86_64-linux-gnu/libmariadbclient_r.a libmariadbclient-dev: /usr/lib/x86_64-linux-gnu/libmariadbclient_r.so libmariadbclient-dev: /usr/lib/x86_64-linux-gnu/libmariadbclient_r.so.18 libmariadbclient-dev: /usr/lib/x86_64-linux-gnu/libmariadbclient_r.so.18.0.0
Bug#918988: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18
Potentially related: - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=916375 apache2: Segmentation fault when mod_perl.so is enabled - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=918988 libmysqlclient symbol conflict segfaulted Apache - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=920619 libaprutil1-dbd-mysql should also be added to the Breaks-list
Bug#918988: libmariadbclient18: conflict with libmysqlclient18
Package: libmariadbclient18 Version: 10.1.26-0+deb9u1 Severity: normal Dear Maintainer, On a web server running Apache, I'm using OCS inventory (using the ocsinventory-server Debian package), through mod_perl. OCS inventory uses libdbd-mysql-perl, which depends on libmariadbclient18. This Apache instance also runs mod_php, using php5-mysql, which depends on libmysqlclient18. After upgrading libmariadbclient18 from 10.1.26-0+deb9u1 to 10.1.37-0+deb9u1, requests to the OCS inventory server were making Apache crash, leaving "child pid exit signal Segmentation fault (11)" messages in Apache error log files. As a result, Apache was returning 500 HTTP error instead of expected response from OCS inventory. Downgrading libmariadbclient18 to 10.1.26-0+deb9u1 made everything work again. On another server running Apache, I'm using django through mod_wsgi. My django app was depending on the mysqlclient Python module (provided by pip in a virtualenv, not by a Debian package), which contained a .so file linked with libmariadbclient18 (the one in /usr/lib/x86_64-linux-gnu). This same Apache instance also runs mod_php, using php5-mysql, which depends on libmysqlclient18. After upgrading libmariadbclient18 from 10.1.26-0+deb9u1 to 10.1.37-0+deb9u1, requests to the django web site were making Apache crash, leaving "child pid exit signal Segmentation fault (11)" messages in Apache error log files. As a result, Apache was returning 500 HTTP error instead of expected response from django. Downgrading libmariadbclient18 to 10.1.26-0+deb9u1 made everything work again. Using libmariadbclient18 10.1.37-0+deb9u1 but disabling mod_php also worked. I eventually kept libmariadbclient18 10.1.37-0+deb9u1 but installed libmysqlclient-dev instead of libmariadbclient-dev, and rebuilt mysqlclient Python module with libmariadbclient-dev. Now the .so file from mysqlclient is linked with libmysqlclient18, not with libmariadbclient18 anymore. This way mod_wsgi and mod_php successfully run in the same Apache instance, while using libmariadbclient18 10.1.37-0+deb9u1. As a whole, it seems libmysqlclient and libmariadbclient coexisted peacefully with 10.1.26-0+deb9u1, but don't since 10.1.37-0+deb9u1. While trying to debug my wsgi crash, I read some explanations about conflicting symbols. I don't now very well how this whole symbols and dynamic libraries stuff works, but I remarked this : * with 10.1.26-0+deb9u1: $ nm -D /usr/lib/x86_64-linux-gnu/libmariadbclient.so.18 | egrep 'lib(mariadb|mysql)client_18' A libmariadbclient_18 $ nm -D /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 | egrep 'lib(mariadb|mysql)client_18' A libmysqlclient_18 $ * with 10.1.37-0+deb9u1: $ nm -D /usr/lib/x86_64-linux-gnu/libmariadbclient.so.18 | egrep 'lib(mariadb|mysql)client_18' A libmariadbclient_18 A libmysqlclient_18 $ nm -D /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 | egrep 'lib(mariadb|mysql)client_18' A libmysqlclient_18 $ So I wonder if new libmariadbclient declaring the same mysql "things" as libmysqlclient could be the reason of the crashes.