Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
N/A
Description
--source include/have_debug_sync.inc
|
--source include/have_innodb.inc
|
|
create table t1 (a int) engine=InnoDB; |
insert into t1 values (10),(20),(30); |
--send
|
set debug_sync= 'now wait_for downgraded'; |
|
--connect (con_alter,localhost,root,,test)
|
set debug_sync= 'alter_table_online_downgraded signal downgraded wait_for goforit'; |
--send
|
alter table t1 add pk int auto_increment primary key, algorithm=copy, lock=none; |
|
--connection default
|
--reap
|
delete from t1 where a = 20; |
set debug_sync= 'now signal goforit'; |
|
--connection con_alter
|
--reap
|
select * from t1; |
show create table t1; |
|
# Cleanup
|
drop table t1; |
set debug_sync= reset; |
ALTER fails with:
bb-10.10-MDEV-16329 49ad87590 |
mysqltest: At line 20: query 'reap' failed: ER_KEY_NOT_FOUND (1032): Can't find record in 't1' |
For a side note, in the client the error gets scrambled reliably (at least for me), like this:
MariaDB [test]> alter table t1 add pk int auto_increment primary key, algorithm=copy, lock=none; |
ERROR 1032 (HY000): Can't find record in 't1'e done |
Attachments
Issue Links
- is caused by
-
MDEV-16329 Engine-independent online ALTER TABLE
- Closed
- relates to
-
MDEV-28808 Test MDEV-16329 (ALTER ONLINE TABLE) - Core server part
- Closed