About a week ago I was looking at MySQL 5.5.27, and noticed a curious thing. Despite the fact that the new MySQL release contained its usual share of bug fixes, not a single one of them was accompanied with a test case.

Now, let me tell you something about tests. For many years MySQL was using its own testing framework, called mysql-test. The first version was written as early as 1999. Over the years it has accumulated a lot of tests. Tests for new features and regression tests — those that guarantee that a bug, once fixed, will never ever show up again. We had pretty strict policies about it in MySQL AB (and, later, Sun Microsystems) — every new bug fix always had to come with a test case for the bug. And because these tests were always run on many platforms for every push (by the continuous integration tool called Pushbuild — developed in-house by Kristian Nielsen) we were reasonably sure that any bug, once fixed, will stay fixed forever. I’m not with MySQL anymore, but I still cannot imagine that Oracle would weaken that rule. So, it must be something else then.

One of the changes that 5.5.27 brings in an extension to the mysql-test-run script — the driver script of the mysql-test suite — which makes it look for test cases in a new directory. In addition to the usual location (that is, the mysql-test/ directory in the source tree), it will now look for test cases in the internal/mysql-test/ directory. Does this mean that test cases are no longer open source? Oracle did not reply to my question. But indeed, there is evidence that this guess is true. For example, this commit mail shows that new test cases, indeed, go in this “internal” directory, which is not included in the MySQL source distribution.

MySQL test cases were always an important part of the MySQL source tree. They were particularly useful for storage engine developers and for other people extending MySQL, for example, at Facebook, Twitter, and Taobao.  But also for Linux distributions which add their patches to the base MySQL, and even to users, who don’t modify the sources — they still want to confirm that a particular bug was fixed or that their custom-built binary has no obvious flaws.

In May, at the Ubuntu Developer Summit in Oakland, Oracle had 7 representatives there, and they promised that Oracle will be more contributor- and distribution-friendly. It is sad to see that instead of that the MySQL source tree is being closed down.

MySQL AB was never very good at building a development community around the product. There weren’t many MySQL developers or contributors to the project outside of MySQL AB, and the company didn’t do much to increase their number. But now Oracle has noticed them — and it intentionally kills whatever is left of the MySQL development community. Without test cases MySQL becomes as opaque to external developers as any piece of closed source software, and only those most experienced and familiar with the MySQL code base will be able to continue working with it.

UPDATE: It’s difficult to find anything more valuable to external developers than test cases. But arguably the revision history is. It groups changes to these millions of lines of source code into change sets, one change set per a distinct feature or a particular bug fix. It allows to see who changed a specific line of code, when, and why. And it seems that Oracle is going to keep this information to itself too. Public MySQL trees on launchpad with the revision history are not being updated.

Now, is there a single successful Open Source project with no developer community at all ?

UPDATE 2: We’re not the only ones this issue affects. See also:

 

118 thoughts on “Disappearing test cases or did another part of MySQL just become closed source?

      • MariaDB relies upon upstream software as much as the next MySQL compatible fork. It’s nothing against MariaDB, but we can’t trust where YOU get YOUR sources from, that inherently breaks the chain of trust.

        • Actually no. MariaDB doesn’t rely upon the upstream as much as the next compatible fork. Take a look at: http://montyprogram.com/people/ for a list of the Monty Program people who work on MariaDB. I doubt you’ll find another fork with as much MySQL depth.

          When the MariaDB developers merge in MySQL code they check and evaluate it and don’t just mindlessly apply it. If there’s anything they don’t like it doesn’t get merged and if it’s a good idea but poorly implemented they re-do it, properly. They’ve also added lots of features that you simply won’t find in any MySQL release.

  1. Pingback: MariaDB: Disappearing test cases or did another part of MySQL just become closed source? | Linux-Support.com

  2. Its a consequence of the fork. MariaDB is leaching development without giving back to the propietary project.

    Is it really a surprise? Oracle is pretty straight in their policies, they take of their business without any interest to invest in a community that doesnt make profit for them.

    • Two comments: we are giving back, but it is not easy. I, personally, contributed the complete “pluggable authentication” feature to Oracle, and it was not an experience I’d like to repeat.

      And – Oracle is sure within its rights to close-source test cases and not to publish trees on launchpad. Also, I agree that killing a development community provide certain benefits. Short-term.

      But it’s like a restaurant raising prices ten times, so that they could make more profit on every customer. Result? People go eat elsewhere.

    • No, Oracle has full rights on the code and test cases. Read about dual-licensing of MySQL – Oracle can even close source the complete MySQL code, if they’d wanted to.

      • That would cause an immediate response from the European Commission, I think, causing negative effect on Oracle’s business opportunities in Europe. One thing is the license – another the legal guarantees Oracle gave to EU at the time of aquisition of Sun.

        • how’s European Commission involved? A vendor can close source or open source their stuff as the want, why should European Commission care?
          It is the community who cares.

          • Because the EU had to approve the acquisition of Sun by Oracle. To do so, Oracle had to make promises and keep it clear what direction they’d take. If they break that promise, they broke the approvement and can expect penalties because of it.

        • It’s doubtful that the European Commission would have “an immediate” response because Oracle closed-source MySQL. Your geek values aren’t universally held. Besides it would be a sad state on European politics if they wasted time on something as trivial as that.

        • EU cannot decide om Oracle’s business decisions (since Oracle is a US company). But EU (and European governments) can decide on Oracle’s business opportunities and terms in Europe – and if they don’t by themselves I think “somebody” will help them opening their eyes. I don’t think the boundary has been crossed yet – but it is coming close. Oracle gave legal guarantees to to the EU commission that MySQL would continue as Open Soruce. Seizure of Oracle property (but more likely fines in the first place) in Europe is not out of question.

  3. Pingback: Disappearing test cases or did another part of MySQL just become closed source? « The MariaDB Blog | Databases | Scoop.it

  4. Pingback: Ivan Čukić » Time to rely less on MySQL

  5. Interesting that even here many people can’t get rid of their fan boy attitudes and keep on posting to do the switch to PostgreSQL. I just hope that you guys keep up developing MariaDB further, even if Oracle is going to shut down the complete MySQL project. I mean, do you guys really need their stuff?

    • Any time a member of one community calls members of another community “fanboys”, everyone is diminished. Shame on you.

      • It simply is obvious that there are trolls involved if someone calls himself Monty and recommend to use PostgreSQL instead of MySQL based DBS.

        Personally I think only the Oracle DBS is bad, hated to work with it. Although I don’t have many experience with Microsoft DBS. PostgreSQL is definitely a very good DBS and the best fact is, that it’s really fully open source. But statistics still give MySQL more market share (ref. W³Techs and Google Trends). MySQL and PostgreSQL are loosing ground because of the many *new* stuff popping up (e.g. Redis, MongoDB).

  6. Pingback: ¿Se convertirá MySQL en código cerrado?

  7. Do we really need a RDBMS?
    I always wondered how KDE software use a RDBMS, I’d say a noSQL database would be lighter and more appropriate to applications’ uses.

    Even in web development, mysql is being used only because it’s practically a standard, not because the application need its feature.

  8. Time to move to mariaDB then… or postgres if you feel like it.

  9. Pingback: MySQL теряет былую открытость | AllUNIX.ru — Всероссийский портал о UNIX-системах

  10. would you like some cheese with your whine?. Come on… you´re on the business of getting more people to use MariaDB and the best way you find to attract people to your project is to trash “evil” Oracle? By your own admission Oracle MySQL is STILL available under an open source GPL “community version”. That is what you downloaded right?. It´s still available at this URL http://www.mysql.com/products/community/ So how the fuck does the lack of test cases makes it less open?. Surely Oracle wants to keep details about internal fixes for corporate clients in a separate internal directory.

    You should learn from the past mistakes of the Libreoffice forkers, in Shuttleworth´s words http://ho.io/libreoffice

    • The amount of toxic trolling you do for Oracle in so many projects you could easily be in their employment, like Florian Mueller is. You twist the truth, ignore realities (do you tell ALL projects that test cases should be kept private?), swear at people and put them down. I hope they are paying you well to be their pet sociopath.

      • I congratulate trollwatcher for doing some research on my person, and finding out I´ve written positively about Oracle´s funding of Sun´s former open source projects. Congratulations! it means you can use Google. But, you fucked it by being an anonymous weasel. In any case, I take this attack as coming from the project admin weasels.

        I saw this coming, the moment some advocates of the LibreOffice freaking forkers said “next, MySQL!”. Unfortunately I didn´t save a screenshot of the Twitter screen at the time. Obviously there´s a concerted effort by Oracle´s competitors to derail every FOSS project handled by the firm and wrestle control of them, painting this image of an Evil Corporation while saying NOTHING for instance about Novell´s deals with Microsoft, RedHat´s efforts to hide patches
        http://www.channelregister.co.uk/2011/03/04/red_hat_twarts_oracle_and_novell_with_change_to_source_code_packaging/

        Clearly there´s two standards being applied here, and Oracle is always to blame, while others that apply the same methods get a free pass.

        Finally, I´m saddened to disappoint you no money has exchanged hands between any US corp and me. In fact, 90% of the times I sent complaints or suggestions to ORCL guys about Java, those went unanswered. They´re not as open as the Sun guys were.

        And when they did, they referred me to their PR person.

        FC
        PS: MySQL is dual-licensed, if you are against dual-licensing should start a campaign against it. Dual licensing is what allows this (and any other firm using dual-licensing)… to release critical patches for their paying customers first, while those being incorporated in the gpl release at a later date. That´s called a sales incentive.


        • Obviously there´s a concerted effort by Oracle´s competitors to derail every FOSS project handled by the firm and wrestle control of them, painting this image of an Evil Corporation while saying NOTHING for instance about Novell´s deals with Microsoft, RedHat´s efforts to hide patches ”

          Are you so self-absorb, so hell-bent on avoiding any responsibility and accountability, that you use the oldest excuse in the books: THE OTHERS DO IT TOO!

          Never mind that the responsibility for the derailment of those projects was Oracle itself, never mind that Novell and Red Hat’s transgressions were debated to death. Never mind that both of those companies have shown to be good stewards of open source projects for a long, long time. Something that Oracle is incapable of doing!

          Giving your face and real name never stop anyone from behaving in a dishonorable manner, just look at yourself!

          You’re a pathetic excuse for a human being.

          You don’t even know the difference between an accent and apostrophe. Sad!

        • Man, don’t say anything about Red Hat you don’t know. You can’t compare Red Hat patch obfuscation with closed source. Look, RH can obfuscate, but the source is still open. There’s two different things on what RH does and what Oracle is doing.

    • open testcases don’t matter much, open development does. That’s the point being made here – Oracle is making tiny steps in the direction of closing development. The fact that something happens to be GPL doesn’t make it an open project in itself.

      In terms of what you should depend on as company, the picking order is like this:
      Best: open code (gpl/bsd/etc), open development
      Not too horrible: open code (gpl/bsd/etc), closed development
      Bad: closed code, closed development

      Oracle is moving MySQL from Best to Not too horrible. That’s noteworthy for anyone using it and depending on it.

    • That’s the best that you could come up with? An highlighted passage from more than 12 months ago from the king of trolls?

      You don’t know the meaning of responsibility. Reflect… maybe…

  11. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | TechCrunch

  12. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | MotorolaAccessoires

  13. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | 60 Second Stories

  14. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | WhenItsOn

  15. Pingback: ¿Va a cerrar Oracle MySQL?

  16. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | Welcome To My Site

  17. Pingback: Oracle Makes More Moves To Kill Open Source MySQL « IphoneScreen

  18. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | BlackberryAccessoires

  19. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | E-7

  20. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | The Wall Street Geek

  21. Pingback: Oracle Makes More Moves To Kill Open Source MySQL « Whella – Latest News on Wireless Topics

  22. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | Krantenkoppen Tech

  23. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | Crowdfunding News

  24. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | SnaggStuff.com Blog

  25. Pingback: Oracle Makes More Moves To Kill Open Source MySQL

  26. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | AkimoLux.com

  27. Pingback: Oracle Makes More Moves To Kill Open Source MySQL - VitalIT | VitalIT

  28. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | Hosting In

  29. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | iyaan.info

  30. Pingback: Oracle Makes More Moves To Kill Open Source MySQL ‹ Digikid Technology

  31. Pingback: MySQL теряет былую открытость — прекращена публикация тестовых наборов и лога изменений | conon print MySQL теряет былую открытость — прекращен

  32. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | Startup Help

  33. Pingback: Oracle Makes More Moves To Kill Open Source MySQL • Tea & Gadgets

  34. Pingback: MySQL теряет былую открытость — прекращена публикация тестовых наборов и лога изменений | Интересное в сети

  35. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | Social Shopping News

  36. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | TechDiem.com

  37. Pingback: MySQL -> TheirSQL? | Lindeas

  38. Pingback: Oracle Makes More Moves To Kill Open Source MySQL « IphoneAccessoires

  39. Pingback: Wordpress Themes » Blog Archive » Oracle Makes More Moves To Kill Open Source MySQL

  40. Pingback: Oracle Makes More Moves To Kill Open Source MySQL « IpodCase

  41. Pingback: Oracle Makes More Moves To Kill Open Source MySQL « IpadCase

  42. Pingback: Oracle Makes More Moves To Kill Open Source MySQL : Apple Rumor

  43. Pingback: Oracle Makes More Moves To Kill Open Source MySQL « IphoneBattery

  44. Pingback: Oracle Makes More Moves To Kill Open Source MySQL - Mobiwebs Blog | Mobiwebs Blog

  45. Pingback: Oracle Makes More Moves To Kill Open Source MySQL - Just another ReviewMonsters.net Sites site - Test

  46. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | Price Gadget Reviews

  47. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | Rumors and News.com

  48. Pingback: Links 19/8/2012: SolusOS Eveline 1.2 Released, Unity Favours 3-D | Techrights

  49. Pingback: Ontwikkelaar: Oracle laat ‘interne’ testcode weg in MySQL-broncode | Trending in Nederland

  50. Pingback: Oracle Makes More Moves To Kill Open Source MySQL « IphoneCase

  51. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | XSDirect

  52. Pingback: MySQL теряет былую открытость — прекращена публикация тестовых наборов и лога изменений : Записки начинающего линуксоида

  53. Pingback: Oracle Makes More Moves To Kill Open Source MySQL | SamsungAccessoires

  54. Pingback: Oracle Makes More Moves To Kill Open Source MySQL - The Review Blog

  55. Pingback: MySQL Going Closed Source | Robert Accettura's Fun With Wordage

  56. Pingback: Oracle Makes More Moves To Kill Open Source MySQL « The Far Edge

  57. Pingback: 오픈소스에서 멀어지는 MySQL | Tech It! | All about IT Trend

  58. Pingback: Disappearing test cases or did another part of MySQL just become closed source? « The MariaDB Blog « The Wiert Corner – irregular stream of Wiert stuff

  59. Pingback: Oracle Makes More Moves To Kill Open Source MySQL

  60. Pingback: LinuxLife Blog - News: Oracle schließt MySQL-Gemeinschaft immer mehr aus

  61. Pingback: Linux, BSD un citas lietas - Atvērtajās ziņās | MySQL pamazām zaudē atvērtību?

  62. Pingback: MySql, A Step Closer To Being Closed? | T1CG Blog

  63. Pingback: Oracle Makes Moves To Kill Open Source MySQL | Open Source Alternative

  64. Pingback: Verschleiert Oracle MySQL-Informationen? - Der Softwareentwickler Blog

  65. Pingback: 甲骨文正在扼杀开源MySQL    IT经理网|CTOCIO.com

  66. Pingback: Oracle、オープンソースのMySQL潰しに次の一手

  67. Pingback: ¿Va a cerrar Oracle MySQL?

  68. Pingback: Oracle Makes More Moves To Kill Open Source MySQL via Techcrunch.com - Edno360

  69. Pingback: Oracle Makes More Moves To Kill MySQL | KlineTel

  70. Pingback: MySQL poderá ser descontinuado pela Oracle | Blog Seja Livre

  71. Pingback: Oracle busca hacer MySQL menos abierto | Matuk.com

  72. Pingback: State of the MySQL forks | OpenLife.cc

  73. Pingback: MySQL podría volverse una tecnología más cerrada | E-Commerce Soluciones.EXE

  74. Pingback: MySQL podría volverse una tecnología más cerrada

  75. Pingback: MySQL podría volverse una tecnología más cerrada | the_geek

  76. Pingback: Oracle shoots to kill Open Source | TECHNOLOGY4BUSINESS

  77. Pingback: Oracle Secrecy Threatens Open MySQL Development | KlineTel

  78. Pingback: Twitter il gradasso | Gioorgi.com

  79. Pingback: IOUG Podcast 24-AUG-2012 Rumors of MySQL’s Doom by Oracle / Design Piracy | IOUG Blog Central

  80. Pingback: [QuickTips] Migrando sua app Rails do MySQL para PostgreSQL sem dores | 1up4developers

  81. Pingback: [QuickTips] Migrando sua app Rails do MySQL para PostgreSQL sem dor | 1up4developers

  82. Pingback: Welcome to Datavision International-Oracle Makes More Moves To Kill Open Source MySQL

  83. Pingback: El futuro Open Source de MySQL está complicándose

  84. Pingback: Linux Caracas - El futuro Open Source de MySQL está complicándose

  85. Pingback: Oracle quer “matar” versão opensource do MySQL — Espaço Liberdade — Linux, Software Livre e Tecnologia

  86. Pingback: Oracle busca hacer MySQL menos abierto « Donde El Futuro Es El Presente.

  87. Pingback: Czytelnia #1 | /var/log/bpiotrowski

  88. Pingback: Oracle Makes More Moves To Kill Open Source MySQL » Dextre zèbre

  89. Pingback: 甲骨文正在扼杀开源软件MySQL    IT经理网|CTOCIO.com

  90. Pingback: Mysql case | Superprotonix

  91. Pingback: Tech Crunch: Culture Clash & Oracle Makes More Moves To Kill Open Source MySQL | Timsiu's Blog

  92. Pingback: Monty on broken MySQL promises: Oracle’s going to fork it up | Algesr

  93. Pingback: Unbreakable MySQL? « The MariaDB Blog

  94. Pingback: Mysql close | Insidercoachin

  95. Pingback: MariaDB míří do Fedory a nahrazuje MySQL – co to znamená pro uživatele a adminy? | Fedora.cz

  96. Pingback: Open-source MariaDB, a MySQL fork, challenges Oracle | KrazyWorks

Comments are closed.