Bug#918988: AW: Bug#918988: AW: [debian-mysql] Bug#918988: libmariadbclient18: conflict with libmysqlclient18

2019-04-18 Thread Otto Kekäläinen
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

2019-04-18 Thread Daniel Högele - adelphi
>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

2019-04-17 Thread Otto Kekäläinen
> >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

2019-04-17 Thread Daniel Högele - adelphi
>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

2019-04-17 Thread Otto Kekäläinen
> >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

2019-04-17 Thread Daniel Högele - adelphi
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

2019-04-15 Thread Otto Kekäläinen
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

2019-04-15 Thread Otto Kekäläinen
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

2019-04-15 Thread Otto Kekäläinen
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

2019-02-22 Thread Otto Kekäläinen
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

2019-01-11 Thread Bernard Massot
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.