Very detailed, thanks.    I think I want to lean towards whatever the official 
support for the package is and not measure ourselves by what the various SaaS 
options are doing.  I think there will always be some cloud provider lagging or 
keeping some old legacy version alive well beyond it's lifecycle and we should 
focus on whatever the actual lifecycle is as defined by the package itself (ie 
drop a MySQL version after 8 years when it's no longer supported, etc).  It 
seems to me that any cloud providers/SaaS options would have newer options so 
worst case we're not removing them from the ecosystem, just potentially forcing 
some users to upgrade off of an EoL product.


- ferruzzi


________________________________
From: Andrey Anshin <andrey.ans...@taragol.is>
Sent: Friday, February 10, 2023 4:47 AM
To: dev@airflow.apache.org
Subject: [EXTERNAL] [Discussion] DB backend versions policy


CAUTION: This email originated from outside of the organization. Do not click 
links or open attachments unless you can confirm the sender and know the 
content is safe.


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

Reply via email to