[MDEV-28211] Type conversion error on ALTER TABLE on Galera cluster in TOI mode Created: 2022-04-01  Updated: 2022-05-02  Resolved: 2022-04-25

Status: Closed
Project: MariaDB Server
Component/s: Data Definition - Alter Table, Galera
Affects Version/s: 10.2.32
Fix Version/s: N/A

Type: Bug Priority: Minor
Reporter: Hartmut Holzgraefe Assignee: Jan Lindström (Inactive)
Resolution: Cannot Reproduce Votes: 0
Labels: None


 Description   

When doing a schema change in rolling schema upgrade (RSU) mode on a galera cluster, changing the type or length of a column, it is known that errors like:

[ERROR] Slave SQL: Column 6 of table '...' cannot be converted from type 'varchar(1024 octets)' to type 'varchar(18600 octets) character set utf8', Internal MariaDB error code: 1677

when changing data while only part of the nodes have been upgraded yet, unless slave_type_conversions=ALL_LOSSY,ALL_NON_LOSSY is set.

Now we seem to have had a case where the above error occured on a cluster in TOI mode.

The ALTER TABLE was using ALGORITHM=INSTANT to change the length of a VARCHAR column, and wsrep_slave_threads was set to 8, so this might be a parallel execution race condition?



 Comments   
Comment by Hartmut Holzgraefe [ 2022-04-01 ]

I tried to reproduce this using same settings and multiple clients changing rows in the table in parallel continuously, then issue the ALTER TABLE, but could not reproduce the problem yet ...

Comment by Hartmut Holzgraefe [ 2022-04-22 ]

problem is that I can't even be sure that this really happened in TOI mode and not RSU. Customer is rather confident that nobody on their side switched to RSU, but not 100%

So no reproducible test case, and so far they were only hit by it once ...

Generated at Thu Feb 08 09:58:57 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.