LWN.net Logo

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

Posted Aug 19, 2012 2:03 UTC (Sun) by akeane (subscriber, #85436)
Parent article: MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

One of my company's current projects under development is
a minimal sql client implementing a small subset of the mysql protocol (for use in very resource limited embedded systems), on the mysql website there is some documentation which purports to describe "internals" in this case the mysql client-server protocol.

The documentation is incomplete at best (packet formats are not described correctly, the state machine description one would expect for such a protocol is barely sufficient, the method for authentication is described vaguely) and wrong at worst: packet formats, client server interactions etc.

Now, I had initially thought that was just a case of over worked/stressed developers just not having enough time to do the documentation job properly as well as having to write code, fix bugs, maintenance etc.

Now I am not so sure.

Use the source Luke? Nope, we are writing the code from scratch to avoid copyright assignment issues, which is why we hoped the documentation would be usable.

Lucky for us our code is modular, we can always switch to postgresql if required.


(Log in to post comments)

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

Posted Aug 19, 2012 5:42 UTC (Sun) by Cyberax (✭ supporter ✭, #52523) [Link]

Try https://launchpad.net/drizzle-jdbc/ - it's a BSD-licensed MySQL client. It's in Java but can be easily translated.

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

Posted Aug 19, 2012 11:16 UTC (Sun) by gebi (subscriber, #59940) [Link]

There are also various native mysql driver implementations in erlang. IMHO that's the best documentation for binary protocols. But you should know at least a bit of erlang.

eg. https://github.com/Eonblast/Emysql/blob/master/src/emysql...

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

Posted Aug 19, 2012 14:33 UTC (Sun) by przemoc (subscriber, #67594) [Link]

Was doing a similar thing a few months ago, because we needed an extremely simple non-blocking client. And I do remember that docs [1] had errors (not much though), but I no longer remember what they were. I also remember that WireShark was helpful a bit in this case, but on the other hand MySQL protocol dissector was also buggy on its own. :)

[1] http://dev.mysql.com/doc/internals/en/client-server-proto...

(Strange, I think there was an one-page version of this document, but I don't see it anywhere now.)

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

Posted Aug 19, 2012 19:36 UTC (Sun) by akeane (subscriber, #85436) [Link]

Thanks everyone for the recommendations!

We actually got the mysql specific code finished a couple of weeks back, I was just questioning whether the documentation was such poor quality due to "ask the dev to write the documentation as well as all his other jobs" syndrome or more a case of malign neglect.

Yep przemoc, wireshark was definitely a help ;-) I am not surprised the protocol dissector had problems given the way the mysql people differentiate between different versions, it's like it was just made up as they went along!

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

Posted Aug 19, 2012 20:42 UTC (Sun) by justincormack (subscriber, #70439) [Link]

I always understood that the reason for the obscurity was otherwise you could write a non-GPL lib to talk to mysql (the shipped one is GPL) over the network and therefore isolate the GPL-ness to just the DB, and therefore not have to buy a non-GPL license to Mysql for your proprietary software...

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

Posted Aug 20, 2012 2:51 UTC (Mon) by ewan (subscriber, #5533) [Link]

"Use the source Luke? Nope, we are writing the code from scratch to avoid copyright assignment issues"

There are no copyright assignment issues with using the MySQL source, unless you want Oracle to integrate your changes into their releases. You're just as much at liberty to fork it as you are any other GPL project.

MariaDB: Disappearing test cases or did another part of MySQL just become closed source?

Posted Aug 20, 2012 3:51 UTC (Mon) by dlang (✭ supporter ✭, #313) [Link]

they don't want the result to be limited by the GPL

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds