1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-01 03:47:19 +03:00

enabled and extended single user test

This commit is contained in:
tomas@whalegate.ndb.mysql.com
2007-03-23 17:14:38 +01:00
parent 6c4a7a4469
commit 41dfbb6f2b
3 changed files with 47 additions and 17 deletions

View File

@ -43,4 +43,14 @@ update t1 set b=b+100;
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
update t1 set b=b+100 where a > 7;
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
BEGIN;
update t1 set b=b+100 where a=1;
BEGIN;
update t1 set b=b+100 where a=2;
update t1 set b=b+100 where a=3;
COMMIT;
update t1 set b=b+100 where a=4;
ERROR HY000: Got error 299 'Operation not allowed or aborted due to single user mode' from ndbcluster
COMMIT;
ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
drop table t1;

View File

@ -12,4 +12,3 @@
ndb_load : Bug#17233
user_limits : Bug#23921 random failure of user_limits.test
ndb_single_user : Bug#27021 Error codes in mysqld in single user mode varies

View File

@ -51,34 +51,55 @@ insert into t1 select * from t2;
--connection server2
--error 1051
drop table t1;
--error 1146
#--error 1296
--error 1296
create index new_index on t1 (c);
--error 1146
#--error 1296
--error 1296
insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0),(6,6,0),(7,7,0),(8,8,0),(9,9,0),(10,10,0);
--error 1146
#--error 1296
--error 1296
select * from t1 where a = 1;
--error 1146
#--error 1296
--error 1296
select * from t1 where b = 4;
--error 1146
#--error 1296
--error 1296
update t1 set b=102 where a = 2;
--error 1146
#--error 1296
--error 1296
update t1 set b=103 where b = 3;
--error 1146
#--error 1296
--error 1296
update t1 set b=b+100;
--error 1146
#--error 1296
--error 1296
update t1 set b=b+100 where a > 7;
--exec $NDB_MGM --no-defaults --ndb-connectstring="localhost:$NDBCLUSTER_PORT" -e "exit single user mode" >> $NDB_TOOLS_OUTPUT
--exec $NDB_TOOLS_DIR/ndb_waiter --no-defaults >> $NDB_TOOLS_OUTPUT
#
# we should be able to run transaction while in single user mode
#
--connection server1
BEGIN;
update t1 set b=b+100 where a=1;
--connection server2
BEGIN;
update t1 set b=b+100 where a=2;
# enter single user mode
--exec $NDB_MGM --no-defaults --ndb-connectstring="localhost:$NDBCLUSTER_PORT" -e "enter single user mode $node_id" >> $NDB_TOOLS_OUTPUT
--exec $NDB_TOOLS_DIR/ndb_waiter --no-defaults --ndb-connectstring="localhost:$NDBCLUSTER_PORT" --single-user >> $NDB_TOOLS_OUTPUT
--connection server1
update t1 set b=b+100 where a=3;
COMMIT;
# while on other mysqld it should be aborted
--connection server2
--error 1296
update t1 set b=b+100 where a=4;
--error 1296
COMMIT;
--exec $NDB_MGM --no-defaults --ndb-connectstring="localhost:$NDBCLUSTER_PORT" -e "exit single user mode" >> $NDB_TOOLS_OUTPUT
--exec $NDB_TOOLS_DIR/ndb_waiter --no-defaults >> $NDB_TOOLS_OUTPUT
# cleanup
--connection server1
drop table t1;