Description
- Gitea version (or commit ref): v1.15.2 (binary release)
- Git version: 2.31.1
- Operating system: openSUSE 15.3
- Database (use
[x]
):- PostgreSQL
- MySQL (Percona XtraDB Cluster)
- MSSQL
- SQLite
- Can you reproduce the bug at https://try.gitea.io:
- Yes (provide example URL)
- No
- Log gist:
Description
Hello,
Thanks for the great software! :-)
We have been using Gitea with a Percona MySQL database and pxc_strict_mode
set to ENFORCING
(a Percona XtraDB setting for MySQL that, beneath other checks, blocks transactions lacking primary keys on tables - this is important, as such transactions can cause issues with the mechanism that propagates write operations to other cluster nodes) since a long time, and it has always been working fantastically. With v1.15 however, there seems to be an issue with missing primary keys in the database. as i.e. the creation of an issue will return a 500 error page, with log entries like the following example being generated:
2021/09/11 02:26:06 ...rs/web/repo/issue.go:980:NewIssuePost() [E] NewIssue: generate issue index failed: Error 1105: Percona-XtraDB-Cluster prohibits use of DML command on a table (gitea.issue_index) without an explicit primary key with pxc_strict_mode = ENFORCING or MASTER
For now we have the database servers in PERMISSIVE
mode, in order for Gitea to be able to operate, however as the database cluster is in use with other services as well, this is not an ideal scenario.
I understand if Percona's distribution of MySQL is not a common use case, however would very much appreciate if the support of it could be considered as a request, or if short instructions on how to manually update the tables in the new version in order for them to include primary keys again could be provided.
Best,
Georg