Testing Methods
Creating a minimal test case can confirm the problem, but you can do
even more with it. The minimal test case makes it easy to pinpoint the
reason for the problem. When you look at a JOIN
that connects several tables with
complicated WHERE
conditions, it’s hard
to say what exactly is wrong. But reducing the query to a couple of tables
narrows the possibilities dramatically. Sometimes you fix the problem
along the way when minimizing the query.
Minimizing the test case usually reveals and fixes the problem.
In this section we’ll consider what to do if you create the test but can’t fix the issue on your own. There can be two reasons for this: a bug in the MySQL code or a misunderstanding of how some feature works. I’ll assume you already read the parts of the MySQL Reference Manual pertaining to the problem and found no answer. There are still some resources you can try.
Try the Query in a Newer Version
The reason for trying a newer version of MySQL is that, in case your problem was actually caused by a bug in the server, you may find that it’s already fixed. Installing and using a new version of MySQL might sound complicated. But if you followed my advice in Sandboxes and have a sandbox, it’s easy, especially if you use a minimal data set and combine the sandbox with your minimal test case.
Check for Known Bugs
If trying a newer version does not work, you can check the bug databases for known bugs. You could even consider searching for a bug report before you try the new ...
Get MySQL Troubleshooting now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.