Among the right things Oracle does for MySQL server development I'd like to highlight the following:
- MySQL server development continues, with new features added, most popular OSes supported, regular releases happened and source code still published at GitHub under GPL license.
- Oracle continues to maintain public MySQL bugs database and fix bugs reported there.
- Oracle accepts external contributions to MySQL server under clear conditions. They acknowledge contributions in public. The release notes, in particular, mention authors of each community-provided patch.
- Oracle works hard on improving performance and scalability of MySQL server.
- Oracle tries to provide good background for their new MySQL designs (check new InnoDB redo logging, for example).
- Oracle cooperates with MySQL Community. They organize their own community events and participate in numerous related conferences, including (but not limited to) the biggest Percona Live ones. Oracle engineers speak and write about their work in progress. Oracle seems to actively support some open source tools that work with MySQL server, like ProxySQL.
- Oracle still keeps and maintains pluggable storage engine architecture and plugin APIs, even though their own development is recently mostly related to InnoDB storage engine.
- Oracle still maintains and improves public MySQL Manual.
|MySQL's future is bright, but there are some clouds|
Here is the list of problems I see:
- Oracle does not develop MySQL server in a true open source way.
- Oracle does not care enough to maintain public bugs database properly.
- Some older MySQL features remain half-backed, not well tested, not properly integrated with each other and new features, and not documented properly, for years.
In general, Oracle's focus seem to be more on new developments and cool features for MySQL (with some of them got ignored and going nowhere with time).
- Oracle's internal QA efforts still seem to be somewhat limited.
We get regression bugs, ASAN failures, debug assertions, crashes, test failures etc in the official releases, and Oracle MySQL still relies a lot on QA by MySQL Community (while not highlighting this fact that much in public).
- MySQL Manual still have many details missing and is not fixed fast enough.
Moreover, it is not open source, so there is no other way for community to fix or improve it other than add comments or report documentation bugs, and wait.