List:General Discussion« Previous MessageNext Message »
From:Reindl Harald Date:May 17 2013 1:07pm
Subject:Re: MySQL Client (libmysqlclient) compatibility policy
View as plain text  

Am 17.05.2013 14:53, schrieb Sebastien FLAESCH:
> On 05/17/2013 12:29 PM, Reindl Harald wrote:
>>
>>
>> Am 17.05.2013 12:05, schrieb Sebastien FLAESCH:
>>> Beside the Oracle skills debate and the stupid mistakes with soname
>>> changes between 5.5.8 and 5.5.10 or 5.6.x, (imagine all of this did
>>> not happen):
>>>
>>> I have a VERY simple question that needs a VERY CLEAR answer:
>>>
>>> In our distribution packages (for different platforms! not only Linux),
>>> I need to provide mysql client binaries for different versions of mysql
>>> client environments:
>>>
>>> 4.1.x
>>> 5.1.x
>>> 5.4.x
>>> 5.5.x
>>> 5.6.x
>>>
>>> How many binaries do I have to provide to support all these versions?
>>>
>>> We compile with headers of a given version and link dynamically with
>>> -lmysqlclient of course
>>
>> 4.1 and 5.6 should be enough if the topic is only
>> to connect to servers from 4.1 to 5.6, a 5.6 client
>> will happily connct to a>= 5.1 server
>>
>> 4.1 has a older protocol version and is AFAIk not supported
>> by recent client libraries, at least recent PHP versions can
>> not connect to servers older than 5.x
> 
> I see want you mean regarding C/S protocols but understand that:
> 
> 1- we do not ship the MySQL client library

so you must require it as dependency

> 2- it's not sure that a 5.6 (or 4.1) libmysqlclient is installed.

you have to make sure it

> Typically, customers will install a MySQL 5.x.y server WITH the
> corresponding 5.x.y MySQL client library (usually on the same
> machine), then they install our software (it's a dev tool).

and you only need to specify this as requirement

> Until today, if we want to have a common and simple rule for all
> plaforms, my instinct is that we better provide a binary compiled
> and linked with each major version of the MySQL we want to support.

no - typically you require the mysql libraries to be installed
in a specific version, or ship them with your package if possible
by license, but the latter is a bad practice because nobody will
update the libs in case of security fixes and this perverts
the concept of shared libraries



Attachment: [application/pgp-signature] OpenPGP digital signature signature.asc
Thread
MySQL Client (libmysqlclient) compatibility policySebastien FLAESCH18 Feb
  • Re: MySQL Client (libmysqlclient) compatibility policyReindl Harald18 Feb
  • Re: MySQL Client (libmysqlclient) compatibility policyNoel Butler18 Feb
    • Re: MySQL Client (libmysqlclient) compatibility policySebastien FLAESCH18 Feb
      • Re: MySQL Client (libmysqlclient) compatibility policySebastien FLAESCH20 Feb
        • Re: MySQL Client (libmysqlclient) compatibility policySebastien FLAESCH17 May
          • Re: MySQL Client (libmysqlclient) compatibility policyReindl Harald17 May
            • Re: MySQL Client (libmysqlclient) compatibility policySebastien FLAESCH17 May
              • Re: MySQL Client (libmysqlclient) compatibility policyReindl Harald17 May
                • Re: MySQL Client (libmysqlclient) compatibility policySebastien FLAESCH17 May
                  • Re: MySQL Client (libmysqlclient) compatibility policyReindl Harald17 May
                    • Re: MySQL Client (libmysqlclient) compatibility policySebastien FLAESCH17 May