-
-
Notifications
You must be signed in to change notification settings - Fork 5.4k
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
Recommend/convert to use case-sensitive collation for MySQL/MSSQL #28662
Conversation
be7ce32
to
bbbd949
Compare
a160445
to
e59c91f
Compare
f95fa87
to
ebc65a7
Compare
03fc215
to
6fb3f5f
Compare
6fb3f5f
to
b80e7de
Compare
The problemIn history, Gitea doesn't strictly require charset/collation. It causes a lot of problems. Especially for MySQL/MSSQL:
The solutionSo maybe it's the time to fix the problem. Ideally, Gitea should require strict and consistent collations. Considering there are a lot of old instances which may already have various database collations, this PR only does some simple fix and problem detection, and don't really force users to do anything. This PR does:
The admin panel self-check page also partially addresses #27011 Then after |
486d66f
to
a6a7d7e
Compare
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
Found another bug for MSSQL testing: Make SQL work with case-sensitivie SQLServer go-testfixtures/testfixtures#182 I think it doesn't need to wait for the go-testfixtures fix. This PR doesn't affect MSSQL at the moment, so the MSSQL fix could be done later separately, the approach is general enough to support it. |
One review needed and Last Call @go-gitea/technical-oversight-committee |
…-gitea#28662) Mainly for MySQL/MSSQL. It is important for Gitea to use case-sensitive database charset collation. If the database is using a case-insensitive collation, Gitea will show startup error/warning messages, and show the errors/warnings on the admin panel's Self-Check page. Make `gitea doctor convert` work for MySQL to convert the collations of database & tables & columns. * Fix go-gitea#28131 ##⚠️ BREAKING⚠️ It is not quite breaking, but it's highly recommended to convert the database&table&column to a consistent and case-sensitive collation.
…-gitea#28662) Mainly for MySQL/MSSQL. It is important for Gitea to use case-sensitive database charset collation. If the database is using a case-insensitive collation, Gitea will show startup error/warning messages, and show the errors/warnings on the admin panel's Self-Check page. Make `gitea doctor convert` work for MySQL to convert the collations of database & tables & columns. * Fix go-gitea#28131 ##⚠️ BREAKING⚠️ It is not quite breaking, but it's highly recommended to convert the database&table&column to a consistent and case-sensitive collation.
Mainly for MySQL/MSSQL.
It is important for Gitea to use case-sensitive database charset collation. If the database is using a case-insensitive collation, Gitea will show startup error/warning messages, and show the errors/warnings on the admin panel's Self-Check page.
Make
gitea doctor convert
work for MySQL to convert the collations of database & tables & columns.It is not quite breaking, but it's highly recommended to convert the database&table&column to a consistent and case-sensitive collation.