Commit d607c2b
docker: Update to latest stable MySQL, PostgreSQL
MySQL 9.7 changed the default gtid_mode from OFF to ON (since 9.5). When
the MySQL Docker container initialises, the init scripts run with
GTID=ON, leaving non-empty GTID_EXECUTED in the binary log even though
the final server starts with --gtid-mode=OFF.
This causes two problems:
1. mysqldump always includes SET @@GLOBAL.GTID_PURGED when cloning
test databases for parallel tests. Restoring this requires
SYSTEM_VARIABLES_ADMIN, which was not granted.
2. mysqldump requires PROCESS to dump tablespace information. While
PROCESS was being granted, SYSTEM_VARIABLES_ADMIN was missing
from the grants, causing clone failures (exit code 5) for Django
6.0's stricter parallel test runner.
Fix both issues by:
- Running RESET BINARY LOGS AND GTIDS before granting privileges,
which clears the GTID state left by the init phase so mysqldump
no longer emits GTID_PURGED statements.
- Adding SYSTEM_VARIABLES_ADMIN to the privilege grants so that if
any GTID state is present (e.g. in future MySQL versions), the
restore can set GTID_PURGED.
Signed-off-by: Stephen Finucane <stephen@that.guru>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent 6039529 commit d607c2b
3 files changed
Lines changed: 19 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
50 | | - | |
| 50 | + | |
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
63 | | - | |
| 63 | + | |
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
| 76 | + | |
| 77 | + | |
76 | 78 | | |
77 | 79 | | |
78 | 80 | | |
| |||
98 | 100 | | |
99 | 101 | | |
100 | 102 | | |
101 | | - | |
102 | | - | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
103 | 108 | | |
104 | 109 | | |
105 | 110 | | |
| |||
164 | 169 | | |
165 | 170 | | |
166 | 171 | | |
167 | | - | |
168 | | - | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
169 | 178 | | |
170 | 179 | | |
171 | 180 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
| 5 | + | |
5 | 6 | | |
6 | 7 | | |
7 | 8 | | |
| |||
0 commit comments