-- source include/not_embedded.inc -- source include/have_multi_ndb.inc --echo ******************************* --echo * basic concurent online alter test --echo ******************************* --echo * With Commit --echo ******************************* connection server1; CREATE TABLE t1 (a INT UNSIGNED KEY, b INT UNSIGNED) ENGINE NDB; let $v=4; disable_query_log; while ($v) { --eval INSERT INTO t1 VALUES($v,$v); dec $v; } enable_query_log; connection server2; begin; update t1 set b = 0 where a = 1; update t1 set b = 1 where a = 2; delete from t1 where a = 3; insert into t1 values (5,5),(6,6); update t1 set b = 0 where a = 6; connection server1; ALTER TABLE t1 ADD c CHAR(19), ADD d VARCHAR(255), ADD e char(255); connection server2; update t1 set b = 0 where a = 2; update t1 set b = 0 where a = 4; update t1 set b = 0 where a = 5; insert into t1 values (7,0,null,null,null),(8,0,'8','8','8'); commit; connection server1; SELECT * FROM t1 ORDER BY a; DROP TABLE t1; --echo ******************************* --echo * basic concurent online alter test --echo ******************************* --echo * With Rollback --echo ******************************* connection server1; CREATE TABLE t1 (a INT UNSIGNED KEY, b INT UNSIGNED) ENGINE NDB; let $v=4; disable_query_log; while ($v) { --eval INSERT INTO t1 VALUES($v,$v); dec $v; } enable_query_log; connection server2; begin; update t1 set b = 0 where a = 1; update t1 set b = 1 where a = 2; delete from t1 where a = 3; insert into t1 values (5,5),(6,6); update t1 set b = 0 where a = 6; connection server1; ALTER TABLE t1 ADD c CHAR(19), ADD d VARCHAR(255), ADD e char(255); connection server2; update t1 set b = 0 where a = 2; update t1 set b = 0 where a = 4; update t1 set b = 0 where a = 5; insert into t1 values (7,0,null,null,null),(8,0,'8','8','8'); rollback; connection server1; SELECT * FROM t1 ORDER BY a; DROP TABLE t1;