For some reason the Committee of FOSDEM 2019
MySQL, MariaDB & Friends Devroom of all my talks
submitted picked up the one on how to create a useful MySQL bug
report, so I have no options but continue to write about MySQL
bugs, as long and MySQL Community wants and even prefers to
listen and read about them... That's what I do, with
pleasure.

Today I'll continue my series of posts about community bug reports I am
subscribed to with the review of bugs reported since October 1,
2018, starting from the oldest and skipping those MySQL 8
regression ones I've already commented
on:

More than 2 months passed since my previous review of active MySQL bug reports I
am subscribed to, so it's time to describe what I was interested
in this summer.

Let's start with few bug reports that really surprised me:

Bug #91893 - "LOAD DATA INFILE throws
error with NOT NULL column defined via SET". The bug was
reported yesterday and seem to be about a regression in MySQL
8.0.12 vs older versions. At least I have no problem to use
such a way to generate columns for LOAD DATA with
MariaDB 10.3.7.

Several MySQL releases happened yesterday, but of them all I am
mostly interested in MySQL 5.7.23, as MySQL 5.7 (either directly or
indirectly, via forks and upstream fixes they merge) is probably
the most widely used MySQL GA release at the moment.

In this post (in a typical manner for this "Fun with Bugs"
series) I'd like to describe several bugs reported by MySQL
Community users and fixed in MySQL 5.7.23. As usual, I'll try to
concentrate mostly on InnoDB, replication, partitioning and
optimizer-related bugs (if any).

I should highlight from the very beginning that most of the
features I am going to list are not that much improved by other
vendors. But they at least have an option of providing other,
fully supported storage engines that may overcome the problems in
these features, while Oracle's trend to get rid of most engines
but InnoDB makes MySQL users more seriously affected by any
problems related to InnoDB.

Back in April I was preparing for vacations that my wife and I
planned to spend in UK. Among other things planned I wanted to
visit a customer's office in London and discuss few MySQL and MariaDB
related topics, let's call them "stories". I tried to prepare
myself for the discussion and collected a list of known active
bugs (what else could I do as MySQL entomologist) for each of
them. Surely live discussion was not suitable to share lists of
bugs (and for some "stories" they were long), so I promised to
share them later, in my blog. Time to do what I promised had
finally come!

One of the stories we briefly discussed was "partitioning story".
Right now I can immediately identify at least 47 active MySQL
bugs in the related …

I've subscribed to more than 15 new MySQL bug reports since
the previous post in this series, so it's time
for a new one. I am trying to follow important, funny or hard to
process bug reports every day. Here is the list of the most
interesting recent ones starting from the latest (with several
still not processed properly):

Bug #90211 - "Various warnings and
errors when compiling MySQL 8 with Clang". Roel
Van de Paar and Percona in general continue their QA efforts in a hope to make MySQL 8
better. Current opinion of Oracle …

Oracle had formally released MySQL 5.7.21 yesterday. I do not
bother any more to study MySQL release notes carefully and
completely, but during a quick review today I've noted several
interesting items I'd like you to pay attention to.

I am historically interested in InnoDB implementation details, so
I could not miss Bug
#87619 - "InnoDB partition table will lock into the near
record as a condition in the use ". This was a regression bug
in 5.7+, probably caused by new implementation of partitioning in
InnoDB.

Another interesting bug is Bug
#86927 - "Renaming a partitioned table does not update
mysql.innodb_table_stats.", by …

While working in Support, I noticed that probably at least once a
week I have to use or mention lsof
utility in some context. This week, for example, we had a
customer trying to find out if his mysqld process running
is linked with tcmalloc library. He started it different
ways, using LD_PRELOAD directly and --malloc-lib
option of mysqld_safe script etc, but wanted to verify
that his attempts really worked as expected. My immediate comment
in the internal chat was: "Just let them run lsof -p `pidof
mysqld` | grep mall and check!" My MariaDB 10.2 instance
uses jemalloc and this can be checked exactly the same
way:
openxs@ao756:~/dbs/maria10.2$ ps aux | grep
mysqld...
openxs 4619 0.0 0.0
4452 804 pts/2 S …

While MySQL 8.0.x hardly has much impact on my regular work,
recent MySQL 5.7.20 release is something to check carefully.
MySQL 5.7 is widely used in production, as a base for Percona
Server 5.7, some features may be merged into MariaDB 10.x etc.
So, here is my review of some community reported bugs that were
fixed in recently released MySQL 5.7.20, based on the release notes.

Usually I start with InnoDB bug fixes, but in 5.7.20 several
related fixes were made only to bugs reported internally. So,
this time I have to start with partitioning:

This week is special and full of anniversaries for me. This week
5 years ago I left Oracle behind and joined Percona... Same week
5 years ago I had written something about MySQL in this blog for the
first time in my life. 5 years ago I've created my Facebook account that I actively (ab)use for discussing work-related issues.
So, to summarize, it's a five years anniversary of my coming out
as a MySQL Entomologist, somebody who writes and speaks about
MySQL and bugs in MySQL in public! These 5 years were mostly
awesome.

I decided to celebrate with yet another post in this relatively
new series and summarize in short what interesting things I
studied, …

Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion
of Oracle or any other party.