-
Notifications
You must be signed in to change notification settings - Fork 14.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[AIRFLOW-7058] Add support for different DB versions #7717
[AIRFLOW-7058] Add support for different DB versions #7717
Conversation
Let's see if it works with MySQL 8 :) |
739cda0
to
c74d0ea
Compare
Last time I looked at mysql 8 we failed cos of some bulk export type thing we were using |
882eb58
to
e754c77
Compare
e754c77
to
411e850
Compare
Codecov Report
@@ Coverage Diff @@
## master #7717 +/- ##
==========================================
- Coverage 86.92% 6.22% -80.70%
==========================================
Files 915 914 -1
Lines 44152 44145 -7
==========================================
- Hits 38377 2747 -35630
- Misses 5775 41398 +35623
Continue to review full report at Codecov.
|
411e850
to
89fa27f
Compare
I will try both python 3.8 and mysql 8 as separate PRs :) |
89fa27f
to
2446789
Compare
766d745
to
0afc92d
Compare
0afc92d
to
e30a850
Compare
(cherry picked from commit 271ee64)
(cherry picked from commit 271ee64)
(cherry picked from commit 271ee64)
We missed that when we added support for differnet mysql versions in apache#7717 when we removed default character set setting for the database server. This change forces the default on database server to be utf8mb4 - regardless if MySQL 5.7 or MySQL8 is used. Utf8mb4 is default for MySQL8 but latin1 is default fo MySQL 5.7. There was a suspected root cause of the problem: https://dev.mysql.com/doc/refman/8.0/en/charset-connection.html where mysql client falls back to the default collation if the client8 is used with 5.7 database, but this should be no problem if the default DB character set is forced to be utf8mb4 This PR restores forcing the server-side encoding.
* Fix Connection.description migration for MySQL8 Due to not executing MySQL8 tests Fixed in #12591 added description for connection table was not compatible with MySQL8 with utf8mb4 character set. This change adds migration and fixes the previous migration to make it compatible. * Fixes inconsistent setting of encoding on Mysql 5.7/8 We missed that when we added support for differnet mysql versions in #7717 when we removed default character set setting for the database server. This change forces the default on database server to be utf8mb4 - regardless if MySQL 5.7 or MySQL8 is used. Utf8mb4 is default for MySQL8 but latin1 is default fo MySQL 5.7. There was a suspected root cause of the problem: https://dev.mysql.com/doc/refman/8.0/en/charset-connection.html where mysql client falls back to the default collation if the client8 is used with 5.7 database, but this should be no problem if the default DB character set is forced to be utf8mb4 This PR restores forcing the server-side encoding.
Please review only the last commit - it is based on #7570
Issue link: AIRFLOW-7058
Make sure to mark the boxes below before creating PR: [x]
[AIRFLOW-NNNN]
. AIRFLOW-NNNN = JIRA ID** For document-only changes commit message can start with
[AIRFLOW-XXXX]
.In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.
Read the Pull Request Guidelines for more information.