EmergencyEMERGENCY? Get 24/7 Help Now!

Thoughts on MySQL 8.0.3 RC – The First MySQL 8.0 Release Candidate

 | December 12, 2017 |  Posted In: MySQL, MySQL 8.0, Percona Server for MySQL, Quality Assurance


MySQL 8.0.3 RCPercona’s Technical Director of Quality Assurance Roel Van de Paar shares his findings on the quality of MySQL 8.0.3 RC.

On 21 September 2017, our upstream friends at Oracle released MySQL 8.0.3 RC as the first MySQL 8.0 Release Candidate.

I tested the MySQL 8.0.3 Release Candidate branch with selected Percona bugfixes applied and built it as debug using the pquery QA framework (freely available here). Percona releases Percona Server for MySQL – an improved fork of the MySQL server – with additional features and bug patches.

Any QA engineer would enjoy seeing the many bugs discovered:

However, these results seem to show a lack of quality in the MySQL 8.0.3 RC release.

It looks like there are many new regressions, and I logged no less than 40 crashing, asserting and other bugs (security bugs are hidden from this list) to the MySQL bug tracker at Oracle. For each bug found, the test case is reduced (using reducer.sh, also available in the pquery QA framework) where possible and the bug is verified against upstream. If the bug is found upstream also, we log it there. No bugs were logged against Percona Server for MySQL.

Upstream quality is very important for us for several reasons. Firstly, any bug present upstream means we see the bug too. We then need to figure out whether it is upstream, or in our own code. Secondly, the better upstream quality is, the better our eventual product is as well. We care about quality.

We have seen the upstream developers do some great things in the past when it comes to dealing with a large influx of bugs, and we hope it will be no different this time. There is hope that MySQL 8.0 becomes another successful release from the great team at Oracle!

As soon as Oracle releases 8.0.4 RC (the second release candidate), and our team merges it in the Percona Server for MySQL patches (and perhaps features by then), I will test it again!

If you like to stay tuned for more on MySQL 8.0 tested and reviewed by the world’s leading database experts, just leave us a comment below and tick the “Notify me of new posts via email” subscription box.

Roel Van de Paar

Roel leads Percona’s QA team. Before coming to Percona, he contributed significantly to the QA infrastructure at Oracle. Roel has a varied background in IT, backed up by many industry leading certifications. He also enjoys time with God, his wife and 5 children, or heading into nature. Roel tweets at @RoelVandePaar


    • Hi Abe,

      Each line is a new regression – i.e. a new issue not previously seen. Previously seen issues (i.e. open defects already logged) were/are removed by our filters. Also, this list lists a maximum of 10 trials per issue, even though there may have been more.

      Technical sidenode; All this is done by pquery-go-expert.sh which is an advanced way of running the pquery framework. It 1) preps testcase reducers (reducer.sh) ready-to-run for each trial, 2) removes >10 ‘issue duplicates’ leaving 10 trials per issue (10 trials is usually more then sufficient to get a good test case), 3) filters known issues (using pquery-clean-known.sh which in turns uses known_bugs.strings – our bug filter list). If you ever have a crash, run text_string.sh against it and compare it with the list in known_bugs.strings (even old bugs are left, but remarked when fixed) – it’s a great way to find out if a bug is already been logged for the crash you’re seeing. For all these scripts, just clone percona-qa (https://github.com/Percona-QA/percona-qa) from Github.

      In other words/in summary, the list above is substantial proof of a lot of new regressions in 8.0. Still, I have trust in Oracle to resolve most of these before GA!

Leave a Reply