<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr">вт, 5 февр. 2019 г., 23:04 Dmitry V. Levin <a href="mailto:ldv@altlinux.org" target="_blank" rel="noreferrer">ldv@altlinux.org</a>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Tue, Feb 05, 2019 at 09:23:31PM +0300, Anton Farygin wrote:<br>
> 05.02.2019 21:00, Dmitry V. Levin пишет:<br>
> > On Tue, Feb 05, 2019 at 08:55:14PM +0300, Anton Farygin wrote:<br>
> >> 05.02.2019 20:24, Dmitry V. Levin пишет:<br>
> >>> On Tue, Feb 05, 2019 at 06:50:50PM +0300, Nikolai Kostrigin wrote:<br>
> >>>> Уважаемые коллеги, здравствуйте!<br>
> >>>><br>
> >>>> Для полноценного перехода на MySQL 8.0 в Сизифе необходимо пересобрать<br>
> >>>> ряд пакетов с libmysqlclient21.<br>
> >>> Уточните, пожалуйста, почему в Сизифе нужно переходить<br>
> >>> на libmysqlclient.so.21, а не на libmariadb.so.3?<br>
> >> А почему в сизифе нужно переходить на gcc8, а не, например, icc 19 ?<br>
> >><br>
> >> Наверное, ответ очевиден - это две разные библиотеки.<br>
> > Не совсем очевидно, поскольку у них был общий предок.<br>
> > Если клиентам всё равно, с чем линковаться, то что им рекомендовать,<br>
> > -lmariadb или -lmysqlclient?<br>
> <br>
> Ну выбор очевиден - если всё-таки тебе нужен mysqlclient, то выбирай <br>
> его. mariadb это не чистая замена для mysqlclient.<br>
<br>
Моя гипотеза заключается в том, что большинству приложений всё равно,<br>
но я не проверял. Таким нетребовательным клиентам как postfix-mysql,<br>
например, точно всё равно.<br>
<br>
> Т.к. mariadb продолжает пытаться притворяться mysql, то разведены они <br>
> совсем фигово. Но у меня были случаи, когда приложение не собиралось с <br>
> mariadb, но при этом собиралось с mysqlclient:<br>
> <a href="https://bugzilla.altlinux.org/show_bug.cgi?id=35004" rel="noreferrer noreferrer noreferrer" target="_blank">https://bugzilla.altlinux.org/show_bug.cgi?id=35004</a> - тут есть некоторые <br>
> подробности, если интересно.<br>
> <br>
> Ещё можно посмотреть сюда: <br>
> <a href="https://mariadb.com/kb/en/library/mariadb-vs-mysql-compatibility/" rel="noreferrer noreferrer noreferrer" target="_blank">https://mariadb.com/kb/en/library/mariadb-vs-mysql-compatibility/</a> - тут <br>
> есть некоторый список несовместимостей между этими базами - mariadb и mysql<br>
> <br>
> > По той же причине не очевидно, достаточно ли хорошо они разведены?<br>
> > Если libmariadb и libmysqlclient прямо или косвенно окажутся загруженными<br>
> > в память одного приложения, не приведёт ли механизм elf symbol interposition<br>
> > к тому, что эти библиотеки помешают друг другу?<br>
> > ]]<br>
> <br>
> Они разведены плохо (точнее никак), поэтому лучше оставить кого-то <br>
> одного в devel части. Библиотеки мешают друг другу так же как и раньше <br>
> мешал libmysqlclient19 вместе с libmysqlclient20 - мы не знаем об <br>
> известных случаях падений приложений, загружающих сразу две версии <br>
> libmysqlclient.<br>
<br>
Я сравнил списки символов, экспортируемых libmariadb.so.3 и libmysqlclient.so.21:<br>
110 общих с префиксом mysql_,<br>
114 только в libmariadb, из которых 83 с префиксом mysql_,<br>
8 только в libmysqlclient, из которых 4 с префиксом mysql_.<br>
<br>
Другими словами, libmariadb и libmysqlclient, будучи загруженными<br>
одновременно, вероятно, будут мешать друг другу.<br>
<br>
> Что касается совместимости, то приложения, слинкованные с mysqlclient - <br>
> пока нормально подключаются туда и туда, надеюсь это поведение так и <br>
> останется.<br>
> Честно говоря, мне не очень хочется повторять историю с ffmpeg, когда мы <br>
> долгое время жили с его форком (libav), при этом страдали все, кроме <br>
> ментейнера ;)<br>
<br>
Тут хорошо бы угадать с выбором форка.<br>
Какой выбор сделали другие: Debian, Fedora, OpenSUSE?<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">Дима, тут _теперь_ выбор между Oracle и IBM. Если ещё учесть покупку Microsoft крупного вендорами проприетарного клона Postgresql, то выбор наш между хреном и редькой.</div><div dir="auto"><br></div><div dir="auto">Rgrds, Алексей</div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br><br></blockquote></div></div></div>