MySQL Connector Extension

Hi,

It would appear that something changed during 3.5 development in the
component source code that makes the connectors I provide for Linux and
Mac incompatible with versions 3.3.x and 3.4.x.

I have corrected the page on the extensions site to indicate that the
files to be found there will now only work with version 3.5 (which is
not yet even out the door).

I will not be building for version 3.3.X, as this uses the old build
framework, and besides, support for 3.3.x will end soon anyway.

I might, if I get the time, and find the disk space, rebuild the Linux
and Mac connectors with the 3.4.x branch. If so, I will post a notice
here. I'm not prepared to keep up with a moving target, which is what
this project is becoming.

Alex

Hi :slight_smile:
I thought the old connectors you built did work for both 3.3.x and 3.4.x but just not for 3.5.x?  Also i thought you wrote a wiki-page somewhere to help people build their own connector from source?

I would have thought the best way forwards was to put a note that the existing connectors were for 3.3.x and 3.4.x branches and then gradually upload the 3.5.x connectors alongside the existing ones. 
Regards from
Tom :slight_smile:

Hi Alexander,

Maybe Lionel (cc ) has an idea of this area?
(But he is on vacation now IIRC)

Alexander Thurgood wrote (24-12-11 07:36)

It would appear that something changed during 3.5 development in the
component source code that makes the connectors I provide for Linux and
Mac incompatible with versions 3.3.x and 3.4.x.

I have corrected the page on the extensions site to indicate that the
files to be found there will now only work with version 3.5 (which is
not yet even out the door).

I will not be building for version 3.3.X, as this uses the old build
framework, and besides, support for 3.3.x will end soon anyway.

I might, if I get the time, and find the disk space, rebuild the Linux
and Mac connectors with the 3.4.x branch. If so, I will post a notice
here. I'm not prepared to keep up with a moving target, which is what
this project is becoming.

Cheers,
Cor

Hi Tom,

I thought the old connectors you built did work for both 3.3.x and 3.4.x but just not for 3.5.x? Also i thought you wrote a wiki-page somewhere to help people build their own connector from source?

The connectors I originally put up did work with 3.3.x, and 3.4.x (or so
I thought, at least they did on my system), but somewhere along the line
in the run up to 3.5, something got changed, and that has f****d up the
compatibility of the connectors with previous versions such that the
ones I have recently uploaded (and overwritten over the initial
connectors) only work on 3.5. I suspect that it has something to do with
the mysql libraries that got a version bump and the changes in passive
component registration, such that it will now only produce a usable
connector on 3.5.

I never wrote a wiki page for this or anything like it, since it kept
moving all the time - one day it would build, the next not, and as it
was being worked on, there was no real point.

I would have thought the best way forwards was to put a note that the existing connectors were for 3.3.x and 3.4.x branches and then gradually upload the 3.5.x connectors alongside the existing ones.
Regards from

I have just put a note that the connectors currently available on the
extensions website are only known to work with 3.5, and that even that
may be library version specific.

Alex

Hi :slight_smile:
Ouch!  Now i understand why you were annoyed.
Regards from
Tom :slight_smile:

Hi Lionel,

As I understand things, in general, compiling a connector against
version 3.y guarantees only binary compatibility with versions 3.x
with x >= y. So if you compile against 3.4 you'll get a connector
compatible with 3.5 *and* with 3.4. If you compile against 3.3, it
will be compatible with 3.3, 3.4 and 3.5.

OK, that would explain why my more recently posted connectors only work
with >=3.5, thanks for that explanation. It also means that there's no need
for me to change the extensions page blurb again. I won't be compiling
against 3.3, since we are virtually at EOL (so far as I have understood the
support/release plan). I haven't checked out the 3.4 branch to build
against that, but space and time constraints on the build machines may
prevent me from doing so anyway.

If a connector compiled against 3.3 or 3.4 does not work with 3.5 for
ABI reasons (ABI = application binary interface), that is a bug in
LibreOffice 3.5, which needs to be fixed before release. I already
found (and fixed in collaboration with Kohei) such a bug, see
http://lists.freedesktop.org/archives/libreoffice/2011-August/016921.html

If we have such a bug left, please raise it with reproduction
instructions (put me in CC, but I'm a bit overscheduled now for
"illness in the family" reasons).

The problem appears to be that the Oracle Mysql Connector 1.0.1 no longer
works in 3.5. This would have probably been built against OpenOffice.org
3.3 code. It may be that there are sufficiently subtle differences in our
code trees that now prevent that connector from working with 3.5 as it used
to with previous 3.3.x and 3.4.x versions. However, in my tests last night
on 32bit Linux with a 2-day old build from master and the Oracle mysql
connector, I no longer had any errors. This would need to be confirmed for
Windows and Mac platforms too.

Alex

Hi :slight_smile:
I agree there is no point in building a new connector for the 3.3.x branch because it's nearing Eol (i thought that was end-of-line, as in a line of text, but it kinda works well for this too).  However if there is an easily accessible connector that does work then it would be great to have it up on the site too.  There are quite a lot of people still using 3.3.x who are likely to keep using it for quite a long time (not mentioning any names).  So, a connector that works for 3.3.x would be nice if it's easy but please don't put any work into it.

Also with the connectors could we please make it clear that it's for MariaDb as well as MySql?  MySql is owned and run by Oracle.  Should we really be advertising and supporting Oracle given the way they have treated OpenOffice and LibreOffice?  The original team for MySql and most of the devs and community have almost all moved to MariaDb. 
Regards from
Tom :slight_smile:

As I understand things, in general, compiling a connector against
version 3.y guarantees only binary compatibility with versions 3.x
with x >= y. So if you compile against 3.4 you'll get a connector
compatible with 3.5 *and* with 3.4. If you compile against 3.3, it
will be compatible with 3.3, 3.4 and 3.5.

If a connector compiled against 3.3 or 3.4 does not work with 3.5 for
ABI reasons (ABI = application binary interface), that is a bug in
LibreOffice 3.5, which needs to be fixed before release. I already
found (and fixed in collaboration with Kohei) such a bug, see
http://lists.freedesktop.org/archives/libreoffice/2011-August/016921.html

If we have such a bug left, please raise it with reproduction
instructions (put me in CC, but I'm a bit overscheduled now for
"illness in the family" reasons).

Hi Tom,

Also with the connectors could we please make it clear that it's for MariaDb as well as MySql?

If you have positive test feedback of using the connectors with MariaDB,
then I will put a note onto the extensions website. Otherwise, as far as
I'm concerned, it is untested and I have no need to mention it,
irrespective of whatever the Oracle history/saga is. I would even
mention that it works with latest available versions of ApacheOOo if
someone has tested it and found that it does.

Alex

Hi :slight_smile:
This is going in circles.  By that way of thinking no-one will try the connector with MariaDb if they don't know it will work.  Why would anyone using LibreOffice try MariaDb if TDF people, such as yourself, are heavily promoting older proprietary brands and rejecting OpenSource forks?  Refusing to mention MariaDb severely limits the usefulness of the connector.

There is another way of thinking!  On this list we only hear of people when they have problems.  So far no-one has written in to say they have had a problem with the connector with MariaDb.  We have only had a few people write in to complain of problems with the connector with MySql.  How would we ever know that the connector does work if it keeps on working just fine?  We only know about things after they have broken and then been fixed.  If it's not broken we wouldn't hear about it.

Regards from
Tom :slight_smile:

Hi Tom,

You have misunderstood my point. I am not in a position to support
requests for help from people on non-tested systems.

For one, I simply don't have the time, it is hard enough just finding
machine time to "produce" the connector, and carry out summary testing
that it works on version XYZ of LO (or not as the case may be).

Second, I don't have the time, processing power, or desire to
potentially screw up my current mysql production servers on MacOSX with
an alleged "drop in" replacement. Indeed, a review of :

http://downloads.askmonty.org/mariadb/5.3/

http://kb.askmonty.org/en/installation-issues-with-php5

http://kb.askmonty.org/en/mariadb-versus-mysql-compatibility

shows that not only is there _no_ MacOSX binary version available, but
also, even assuming I were able to build MariaDB from source, install it
and get it to run, I would encounter issues with my current PHP5 setup.
Sorry, that's a no go for me, let somebody with more time and energy on
their hands to give it a try, and then on top of that try building the
mysql connector extension within LibreOffice so that it picks up the
changed mariadb client library names.

I have no animosity towards MariaDB, as far as I'm concerned, from the
blurb, it appears to be a fairly coherent follow-on to mysql by one of
the original creators, but I'm not going to broadcast or advertise for
an as yet untested database solution on my work OS, which is MacOSX.

Alex