From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: To: ALT Linux Team development discussions , "Dmitry V. Levin" References: <20190205172435.GA21346@altlinux.org> <610db99f-3b62-2cb1-3b03-1d0d2ac93ef7@basealt.ru> <20190205180018.GA21487@altlinux.org> From: Anton Farygin Organization: BaseALT Message-ID: Date: Tue, 5 Feb 2019 21:23:31 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 MIME-Version: 1.0 In-Reply-To: <20190205180018.GA21487@altlinux.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US Subject: Re: [devel] =?utf-8?b?0J/QtdGA0LXRhdC+0LQg0L3QsCBsaWJteXNxbGNsaWVu?= =?utf-8?q?t21_=28MySQL8=2E0=29?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Feb 2019 18:23:33 -0000 Archived-At: List-Archive: List-Post: 05.02.2019 21:00, Dmitry V. Levin пишет: > On Tue, Feb 05, 2019 at 08:55:14PM +0300, Anton Farygin wrote: >> 05.02.2019 20:24, Dmitry V. Levin пишет: >>> On Tue, Feb 05, 2019 at 06:50:50PM +0300, Nikolai Kostrigin wrote: >>>> Уважаемые коллеги, здравствуйте! >>>> >>>> Для полноценного перехода на MySQL 8.0 в Сизифе необходимо пересобрать >>>> ряд пакетов с libmysqlclient21. >>> Уточните, пожалуйста, почему в Сизифе нужно переходить >>> на libmysqlclient.so.21, а не на libmariadb.so.3? >> А почему в сизифе нужно переходить на gcc8, а не, например, icc 19 ? >> >> Наверное, ответ очевиден - это две разные библиотеки. > Не совсем очевидно, поскольку у них был общий предок. > Если клиентам всё равно, с чем линковаться, то что им рекомендовать, > -lmariadb или -lmysqlclient? Ну выбор очевиден - если всё-таки тебе нужен mysqlclient, то выбирай его. mariadb это не чистая замена для mysqlclient. Т.к. mariadb продолжает пытаться притворяться mysql, то разведены они совсем фигово. Но у меня были случаи, когда приложение не собиралось с mariadb, но при этом собиралось с mysqlclient: https://bugzilla.altlinux.org/show_bug.cgi?id=35004 - тут есть некоторые подробности, если интересно. Ещё можно посмотреть сюда: https://mariadb.com/kb/en/library/mariadb-vs-mysql-compatibility/ - тут есть некоторый список несовместимостей между этими базами - mariadb и mysql > По той же причине не очевидно, достаточно ли хорошо они разведены? > Если libmariadb и libmysqlclient прямо или косвенно окажутся загруженными > в память одного приложения, не приведёт ли механизм elf symbol interposition > к тому, что эти библиотеки помешают друг другу? > ]] Они разведены плохо (точнее никак), поэтому лучше оставить кого-то одного в devel части. Библиотеки мешают друг другу так же как и раньше мешал libmysqlclient19 вместе с libmysqlclient20 - мы не знаем об известных случаях падений приложений, загружающих сразу две версии libmysqlclient. Что касается совместимости, то приложения, слинкованные с mysqlclient - пока нормально подключаются туда и туда, надеюсь это поведение так и останется. Честно говоря, мне не очень хочется повторять историю с ffmpeg, когда мы долгое время жили с его форком (libav), при этом страдали все, кроме ментейнера ;)