Closed (fixed)
Project:
Drupal core
Version:
10.0.x-dev
Component:
database system
Priority:
Critical
Category:
Task
Assigned:
Unassigned
Issue tags:
Reporter:
Created:
2 Jan 2021 at 08:48 UTC
Updated:
1 Sep 2021 at 08:19 UTC
Jump to comment: Most recent
Comments
Comment #2
catchBumping to critical since this blocks Drupal 10's release and we'll want to announce and potentially warn people from core in advance.
MySQL 8 and MariaDB 10.3 seems reasonable - but we might be stretching things requiring MariaDB 10.4 based on Ubuntu LTS and RHEL?
Comment #3
gábor hojtsySince we are to keep the MariaDB version requirement same as Drupal 9, is there a reason we'd raise the MySQL version requirement other than what is available in distros? Is 5.7 not maintained anymore? I assume MySQL 5.7 and MariaDB 10.3 are on par with the features we use, so if we are to raise MySQL only, does that give us feature / speed, etc benefits?
Comment #4
catch#3 is a good question so had a bit more of a look at things.
MySQL 5.7 will be EOL October 2023 and MariaDB 10.3 will be EOL May 2023.
So... both will be EOL during Drupal 10's release cycle, but MariaDB will be EOL first. Therefore if we have to support MariaDB 10.3 due to distros, I can't see a reason to drop MySQL 5.7 quicker when it's going to be supported six months longer.
So we could do MySQL 5.7 and MariaDB 10.4, or MySQL 8 and MariaDB 10.4, but I think we should rule out MySQL 8 and MariaDB 10.3.
Looking ahead, given MySQL 8 is supported until 2026, that'll likely be the minimum MySQL version for Drupal 11 regardless of whether it is for Drupal 10.
The one new feature in MySQL 8 that could eventually be relevant to us is better support for the InnoDB memcached plugin - i.e. we could potentially add a cache configuration that uses this, which might help sites that don't want to/can't run redis or memcached, - but we don't even have an issue to use that yet.
Comment #5
gábor hojtsyUpdated current status in title and summary then.
Comment #6
effulgentsia commentedThat's not accurate. According to https://packages.ubuntu.com/focal/mariadb-server, it's 10.3(.29), not 10.0. And also, what's the source for saying that MySQL 5.7 is shipped with Ubuntu 20.04? https://packages.ubuntu.com/focal/database/mysql-server does not mention that.
What's the source for MySQL being included in Debian 11? From what I can tell, https://packages.debian.org/testing/database/ doesn't mention any MySQL installation apart from MariaDB.
I think the conclusion is still the same though, that from a db vendor and/or distro support standpoint, MariaDB 10.3 and MySQL 8 are the reasonable minimums, but if we want to keep supporting MySQL 5.7 due to it being on par with MariaDB 10.3, I think that makes sense as well.
Comment #7
effulgentsia commentedPer https://access.redhat.com/support/policy/updates/rhel8-app-streams-life-..., MariaDB 10.5 is also included starting with RHEL 8.4, but RHEL will continue to support MariaDB 10.3 until 2029.
Comment #8
gábor hojtsySince we are to support MariaDB 10.3, keeping MySQL 5.7 support makes most sense IMHO. So agreed with @catch and @effulgentsia. Also we'll have PHP 8 related fallout to deal with in contrib especially and the frontend changes with ckeditor will be sizable, so keeping the database requirements at rest would help us keep the overall Drupal 10 upgrade effort lower.
Comment #9
effulgentsia commentedI want to ask if our conclusion still holds if Drupal 10 isn't EOL until Nov. 2027 (Symfony 6's EOL). We don't know yet if we'll successfully get onto Symfony 6 for D10, or if other dependencies will require us to EOL before 2027, but for the sake of argument, suppose we are able to support D10 until Nov. 2027.
I think that because of #7, it's still reasonable to support MariaDB 10.3 for all of D10.
MySQL 5.7 will go EOL in Oct. 2023. However, Ubuntu 18.04 ESM will support it until 2028. In the past, we've only considered Ubuntu's mainstream support period, but I wonder if Ubuntu's ESM program is now sufficiently broadly available, including free for community users, that we'd be ok with counting on it.
So, my recommendation is to keep with MySQL 5.7 and MariaDB 10.3, even if it means having to support them until Nov. 2027, but what do others think?
Comment #10
catchI think the same argument (that 5.7 is comparable to MariaDB 10.3) holds even if we have a later EOL. The later EOL doesn't necessarily mean we'll have Drupal 11 later, it might just mean a longer LTS period for Drupal 10, so the timing for adopting MySQL 8 features might not change at all either way.
We've had consensus on this issue for a while, so marking RTBC (although also adding tags for things that need doing before we can mark it fixed).
Comment #11
catchI've added a sentence to https://www.drupal.org/docs/system-requirements/database-server-requirem...
We will probably want to rework that page more when Drupal 8.9 is dropped, focusing on Drupal 9 with a note about Drupal 10, it's still quite 8.x focused for the moment.
We'll also probably need a Drupal 10 version of https://www.drupal.org/docs/understanding-drupal/how-drupal-9-was-made-a..., but it feels a bit early for that.
Added a change record and a release notes snippet too.