~ubuntu-branches/ubuntu/precise/mysql-5.1/precise

« back to all changes in this revision

Viewing changes to mysql-test/suite/ndb_team/t/ndb_autodiscover3.test

  • Committer: Bazaar Package Importer
  • Author(s): Norbert Tretkowski
  • Date: 2010-03-17 14:56:02 UTC
  • Revision ID: james.westby@ubuntu.com-20100317145602-x7e30l1b2sb5s6w6
Tags: upstream-5.1.45
ImportĀ upstreamĀ versionĀ 5.1.45

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
-- source include/have_multi_ndb.inc
 
2
-- source include/ndb_default_cluster.inc
 
3
-- source include/not_embedded.inc
 
4
 
 
5
# see bug#21563
 
6
-- source include/have_binlog_format_mixed_or_row.inc
 
7
 
 
8
--disable_warnings
 
9
drop table if exists t1, t2;
 
10
--enable_warnings
 
11
 
 
12
connect (con1,127.0.0.1,root,,test,$MASTER_MYPORT,);
 
13
connect (con2,127.0.0.1,root,,test,$MASTER_MYPORT1,);
 
14
 
 
15
# Workaround for Bug#27644
 
16
# ndb: connecting api node/mysqld may "steal" node_id from running mysqld
 
17
# - let ndb_waiter use a fixed node id so "steal" cannot happen
 
18
--let connect_str = "nodeid=6;$NDB_CONNECTSTRING"
 
19
 
 
20
#
 
21
# Transaction ongoing while cluster is restarted
 
22
#
 
23
--connection server1
 
24
create table t1 (a int key) engine=ndbcluster;
 
25
 
 
26
begin;
 
27
insert into t1 values (1);
 
28
 
 
29
--exec $NDB_MGM --no-defaults -e "all restart" >> $NDB_TOOLS_OUTPUT
 
30
--exec $NDB_TOOLS_DIR/ndb_waiter --no-defaults -c $connect_str >> $NDB_TOOLS_OUTPUT
 
31
# Wait for mysqld to reconnect and exit from readonly mode
 
32
--disable_query_log
 
33
--connection con1
 
34
--source include/ndb_not_readonly.inc
 
35
--connection con2
 
36
--source include/ndb_not_readonly.inc
 
37
--enable_query_log
 
38
 
 
39
--connection server1
 
40
--error 1297
 
41
insert into t1 values (2);
 
42
--error 1296
 
43
commit;
 
44
 
 
45
drop table t1;
 
46
 
 
47
#
 
48
# Stale cache after restart -i
 
49
#
 
50
--connection server1
 
51
create table t2 (a int, b int, primary key(a,b)) engine=ndbcluster;
 
52
insert into t2 values (1,1),(2,1),(3,1),(4,1),(5,1),(6,1),(7,1),(8,1),(9,1),(10,1);
 
53
select * from t2 order by a limit 3;
 
54
 
 
55
--exec $NDB_MGM --no-defaults -e "all restart -i" >> $NDB_TOOLS_OUTPUT
 
56
--exec $NDB_TOOLS_DIR/ndb_waiter --no-defaults -c $connect_str >> $NDB_TOOLS_OUTPUT
 
57
# to ensure mysqld has connected again, and recreated system tables
 
58
--disable_query_log
 
59
--connection con1
 
60
--source include/ndb_not_readonly.inc
 
61
--connection con2
 
62
--source include/ndb_not_readonly.inc
 
63
--enable_query_log
 
64
 
 
65
--connection server2
 
66
--error ER_NO_SUCH_TABLE
 
67
select * from t2;
 
68
show tables like 't2';
 
69
reset master;
 
70
create table t2 (a int key) engine=ndbcluster;
 
71
insert into t2 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
 
72
select * from t2 order by a limit 3;
 
73
 
 
74
# server 1 should have a stale cache, and in this case wrong frm, transaction must be retried
 
75
--connection server1
 
76
select * from t2 order by a limit 3;
 
77
reset master;
 
78
 
 
79
--exec $NDB_MGM --no-defaults -e "all restart -i" >> $NDB_TOOLS_OUTPUT
 
80
--exec $NDB_TOOLS_DIR/ndb_waiter --no-defaults -c $connect_str >> $NDB_TOOLS_OUTPUT
 
81
# to ensure mysqld has connected again, and recreated system tables
 
82
--disable_query_log
 
83
--connection con1
 
84
--source include/ndb_not_readonly.inc
 
85
--connection con2
 
86
--source include/ndb_not_readonly.inc
 
87
--enable_query_log
 
88
 
 
89
--connection server1
 
90
--error ER_NO_SUCH_TABLE
 
91
select * from t2;
 
92
show tables like 't2';
 
93
reset master;
 
94
create table t2 (a int key) engine=ndbcluster;
 
95
insert into t2 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
 
96
select * from t2 order by a limit 3;
 
97
 
 
98
# server 2 should have a stale cache, but with right frm, transaction need not be retried
 
99
--connection server2
 
100
select * from t2 order by a limit 3;
 
101
reset master;
 
102
 
 
103
drop table t2;
 
104
# End of 4.1 tests