alter_replica_13.sim 2.8 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14
system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1
system sh/deploy.sh -n dnode2 -i 2
system sh/deploy.sh -n dnode3 -i 3
system sh/deploy.sh -n dnode4 -i 4
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start
sql connect

print =============== step1: create dnodes
sql create dnode $hostname port 7200

S
Shengliang Guan 已提交
15
$x = 0
16
step1:
S
Shengliang Guan 已提交
17
	$ = $x + 1
18
	sleep 1000
S
Shengliang Guan 已提交
19
	if $x == 10 then
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
	  print ====> dnode not ready!
		return -1
	endi
sql show dnodes
print ===> $data00 $data01 $data02 $data03 $data04 $data05
print ===> $data10 $data11 $data12 $data13 $data14 $data15
if $rows != 2 then
  return -1
endi
if $data(1)[4] != ready then
  goto step1
endi
if $data(2)[4] != ready then
  goto step1
endi

print =============== step2: create database
sql create database db vgroups 1
sql show databases
if $rows != 3 then 
  return -1
endi
if $data(db)[4] != 1 then 
  return -1
endi

sql show dnodes
if $data(2)[2] != 1 then
  return -1
endi

# vnodes
sql show dnodes
if $data(2)[2] != 1 then
  return -1
endi

# v1_dnode
sql show db.vgroups
if $data(2)[3] != 2 then
  return -1
endi

sql_error alter database db replica 3
sql create table db.stb (ts timestamp, c1 int, c2 binary(4)) tags(t1 int, t2 binary(16)) comment "abd"
sql create table db.ctb using db.stb tags(101, "102")
sql insert into db.ctb values(now, 1, "2")
sql select * from db.stb
if $rows != 1 then
  return -1
endi

print =============== step3: create dnodes
sql create dnode $hostname port 7300
sql create dnode $hostname port 7400

S
Shengliang Guan 已提交
76
$x = 0
77
step3:
S
Shengliang Guan 已提交
78
	$x = $x + 1
79
	sleep 1000
S
Shengliang Guan 已提交
80
	if $x == 10 then
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
	  print ====> dnode not ready!
		return -1
	endi
sql show dnodes
print ===> rows: $rows 
print ===> $data00 $data01 $data02 $data03 $data04 $data05
print ===> $data10 $data11 $data12 $data13 $data14 $data15
print ===> $data20 $data21 $data22 $data23 $data24 $data25
print ===> $data30 $data31 $data32 $data33 $data24 $data35
if $rows != 4 then
  return -1
endi
if $data(1)[4] != ready then
  goto step3
endi
if $data(2)[4] != ready then
  goto step3
endi
if $data(3)[4] != ready then
  goto step3
endi
if $data(4)[4] != ready then
  goto step3
endi

print ============= step4: alter database
sql alter database db replica 3
S
Shengliang Guan 已提交
108 109 110 111 112 113 114 115 116 117 118 119

$x = 0
step4:
	$x = $x + 1
	sleep 1000
	if $x == 10 then
	  print ====> dnode not ready!
		return -1
	endi
sql show db.vgroups
print ===> rows: $rows 
print ===> $data00 $data01 $data02 $data03 $data04 $data05
120
if $data[0][4] != leader then
S
Shengliang Guan 已提交
121
  goto step4
122
endi
123
if $data[0][6] != follower then
S
Shengliang Guan 已提交
124
  goto step4
125
endi
126
if $data[0][8] != follower then
S
Shengliang Guan 已提交
127 128 129 130
  goto step4
endi

print ============= step5: stop dnode 2
131 132 133 134 135 136 137 138 139

sql select * from db.stb
if $rows != 1 then
  return -1
endi

system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
S
Shengliang Guan 已提交
140
system sh/exec.sh -n dnode4 -s stop -x SIGINT