[MDEV-28710] Replication broken after upgrading to 10.7.4 Created: 2022-05-31 Updated: 2023-11-28 |
|
| Status: | Open |
| Project: | MariaDB Server |
| Component/s: | Replication, Storage Engine - InnoDB, Virtual Columns |
| Affects Version/s: | 10.7.4, 10.4, 10.5, 10.6, 10.7, 10.8, 10.9 |
| Fix Version/s: | 10.4, 10.5, 10.6 |
| Type: | Bug | Priority: | Major |
| Reporter: | Denis Chernyaev | Assignee: | Nikita Malyavin |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Master-master replication between Windows Server 2019 Standard and CentOS 8 |
||
| Issue Links: |
|
||||||||
| Description |
|
First we updated MariaDB instance on Windows Server to 10.7.4. For about a week it ran smoothly. Then we upgrade CentOS instance to 10.7.4 and shortly after Windows instance crashed. Every `START SLAVE` on Windows instance leads to a crash. We tried to reset Windows instance with mariadb-init-db and restoring the whole database with a fresh dump. But as soon as the replication starts, the instance crashes with the following error:
|
| Comments |
| Comment by Denis Chernyaev [ 2022-05-31 ] | ||||||||||||||
|
Actually the replication process goes a little further each time, but keeps crashing. | ||||||||||||||
| Comment by Daniel Black [ 2022-06-01 ] | ||||||||||||||
|
It it always crashing on the same table? If so can you share its SHOW CREATE TABLE structure? I assume the restore was a SQL based restore (rather than a physical mariabackup). What replication settings are you using? Are the binary log events from Centos8 on 10.7.4 or your previous version? Can you see what type of updates are occurring in the binary log? What was your previous version? | ||||||||||||||
| Comment by Denis Chernyaev [ 2022-06-01 ] | ||||||||||||||
|
Thank you for your reply. Update: after numerous crashes and restarts the Windows instance managed to catch up with CentOS and is running smoothly for roughly an hour. There was one particular table that failed to restore from mysqldump due to a duplicate value in UNIQUE because of trailing spaces. This table was fixed on CentOS and a fresh mysqldump was taken.
The id field in WHERE may vary. The `counter` value is equal in both databases.
Yes it was an SQL-based `mysqldump --single-transaction --master-data=2 --opt --all-databases` result, which was taken from CentOS after the upgrade. The previous version was 10.7.3. | ||||||||||||||
| Comment by Denis Chernyaev [ 2022-06-01 ] | ||||||||||||||
|
Ok so the issue seems to be worked around by reducing `content` length to 3072 and recreating the corresponding index using BTREE algo. The instance stopped crashing. | ||||||||||||||
| Comment by Daniel Black [ 2022-06-01 ] | ||||||||||||||
|
Thanks. Glad you have a workaround. | ||||||||||||||
| Comment by Marko Mäkelä [ 2022-06-03 ] | ||||||||||||||
|
I believe that this bug was caused by Unfortunately, there exist numerous bugs in the implementation of virtual columns in MariaDB. I am reassigning this to the current maintainer of that subsystem. |