maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #06647
Re: libmysqlclient.so and Fedora-specific symbol versioning
Hi, Honza!
On Jan 07, Sergei Golubchik wrote:
> On Jan 07, Honza Horak wrote:
> > Primarily, I'd like to hear what MariaDB upstream's position on that
> > is, if the sync can happen, but any ideas will be welcome.
>
> I believe, Fedora's way is the correct one. Symbols that weren't
> changed from libmysqlclient.so.16 should have libmysqlclient_16
> version, new or modified symbols should have libmysqlclient_18
> version. This way old applications that only use libmysqlclient_16.*
> symbols will continue working just fine.
>
> What is the point of versioning if all symbols have the same version -
> if the version cannot be used to distinguish symbols, one can as well
> use no version at all.
Another thought - as Fedora is the only one that did the symbol
versioning in libmysqlclient correctly, it'd be a pity to revert that
for compatibility with incorectly versioned libraries.
I'd consider doing the following instead (one of or all of that):
* report a bug to MySQL about incorrect versioning
* report a bug to Debian about incorrect versioning
* change the versioning to be correct and debian-compatible,
by having old symbols to appear under both libmysqlclient_16 and
libmysqlclient_18 version.
I don't believe Debian will use Fedora-style versioning, it's an
incompatible change after all. But they might want to use
"correct-and-compatible" approach with symbol aliases and two versions
per symbol.
Regards,
Sergei
Follow ups
References