At the time of the last community survey <https://airflow.apache.org/blog/airflow-survey-2022/#which-metadata-database-do-you-use-single-choice> in spring 2022, only 9 out of 196 respondents were on MySQL 5 (about 5%), down from 27 out of 184 (about 13%) in 2020 <https://airflow.apache.org/blog/airflow-survey-2020/>. Reading the responses carefully it looks like at least half of the remaining users are at large companies probably working on legacy infra (3 of them were still using airflow 1.10.15 or older, and three more were on 2.0 at time of asking). I think aligning the retirement of MySQL 5 with the EOL from other DB providers makes sense, but we may want to give a longer lead time than 9 months since large companies move slowly.
I'll make sure to include a question on the coming survey this spring about why people are using the DB version they're currently on, and if they have plans to upgrade or change in the near future. Best, John On Fri, Feb 10, 2023 at 6:21 AM Andrey Anshin <[email protected]> wrote: > Hi devs! > > That discussion about whether we need any policy for supported DB backends > versions or not. And when we should drop specific version of DB backend > > It is continuation of discussion in Slack about when we potentially could > drop support of MySQL 5.7 - > https://apache-airflow.slack.com/archives/CCPRP7943/p1675423229599569 > > Just as remainder, currently supported DB and versions > > - PostgreSQL: 11, 12, 13, 14, 15 > - MySQL: 5.7, 8 > - SQLite: 3.15.0+ > - MS SQL Server (Experimental): 2017, 2019 > > We drop support for PostgreSQL 10 in the November 2022 (as soon as > community support is over, see: > https://github.com/apache/airflow/pull/27594) and add support for > PostgreSQL 15 (https://github.com/apache/airflow/pull/27444) > > Should we do the same with MySQL 5.7? Unfortunately I can't find any > information about how long Oracle provides community support for MySQL, > only for the commercial version: 5 year Premier Support + 3 Year Extended > (see: https://www.mysql.com/support/). As soon as extended over no new > patches/bug/updates fixes provided. So potentially we also could drop > support of MySQL 5.7 after October 2023 and remove all related to MySQL 5.7 > code from Airflow Core. > > Another option is to create policy based on how long Cloud Providers or > DBaaS providers support specific versions. I did some quick investigation > for AWS, GCP and Azure > > > *PostgreSQL* > > Life Cycle is 5 years after initial release. One major release each year, > usually a new version released in October. > Community EOL PostgreSQL 11 in October-November 2023 > Next version PostgreSQL 16 > > *AWS RDS (exclude Aurora)* > > https://docs.aws.amazon.com/AmazonRDS/latest/PostgreSQLReleaseNotes/postgresql-release-calendar.html > > - Supported versions: 10, 11, 12, 13, 14 > - EOL for PostgreSQL 10 is April 2023 (see > > https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.DBVersions.Deprecation10 > ) > - EOL for PostgreSQL 11 (minimal formally supported by Airflow): N/A, > my assumption is April 2024 > > *Google Cloud SQL* > https://cloud.google.com/sql/docs/postgres/db-versions > > > - Supported versions: 9.6, 10, 11, 12, 13, 14 > - I can't find any info about date of EOL for PostgreSQL 9.6-11 in > Google Cloud SQL, only notice period 12 months before sustain > > *Azure Database for PostgreSQL - Flexible Server* > > https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/concepts-supported-versions > > > - Supported versions: 11, 12, 13, 14 > - Retirement for PostgreSQL 11 and 12 is November 2024. See: > > https://learn.microsoft.com/en-us/azure/postgresql/single-server/concepts-version-policy#major-version-retirement-policy > > *MySQL* > > *AWS RDS (exclude Aurora)* > > https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Concepts.VersionMgmt.html > > > - Supported versions: 5.7, 8 > - EOL 5.7 is October 2023, see: > > https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Concepts.VersionMgmt.html#MySQL.Concepts.VersionMgmt.ReleaseCalendar > > *Google Cloud SQL* > https://cloud.google.com/sql/docs/mysql/db-versions > > - Supported versions 5.6, 5.7, 8 > - I can't find any info about date of EOL for MySQL 5.6 and 5.7 in > Google Cloud SQL, only notice period 12 months before sustain > > > *Azure Database for MySQL - Flexible Server* > > https://learn.microsoft.com/en-us/azure/mysql/single-server/overview#azure-database-for-mysql---flexible-server > > - Supported versions 5.7, 8 > - Retirement for MySQL 5.7 is October 2023, see: > > https://learn.microsoft.com/en-us/azure/mysql/concepts-version-policy#major-version-retirement-policy > > > I do not include information about MS SQL Server, because it has > experimental support. > > And also I do not think that we require any policy for SQLite, since it is > only for development purposes. > > ---- > Best Wishes > *Andrey Anshin* > >
