balance1.sim 6.2 KB
Newer Older
1 2 3 4 5
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
S
Shengliang Guan 已提交
6 7 8 9
system sh/cfg.sh -n dnode1 -c supportVnodes -v 4
system sh/cfg.sh -n dnode2 -c supportVnodes -v 4
system sh/cfg.sh -n dnode3 -c supportVnodes -v 4
system sh/cfg.sh -n dnode4 -c supportVnodes -v 4
10 11 12 13 14

print ========== step1
system sh/exec.sh -n dnode1 -s start
sql connect

S
Shengliang Guan 已提交
15
sql create database d1 vgroups 1
16 17 18 19 20 21 22 23
sql create table d1.t1 (t timestamp, i int) 
sql insert into d1.t1 values(now+1s, 15)
sql insert into d1.t1 values(now+2s, 14)
sql insert into d1.t1 values(now+3s, 13)
sql insert into d1.t1 values(now+4s, 12)
sql insert into d1.t1 values(now+5s, 11)

sql show dnodes
S
Shengliang Guan 已提交
24 25
print dnode1 openVnodes $data(1)[2]
if $data(1)[2] != 1 then
26 27 28 29
	return -1
endi

print ========== step2
S
Shengliang Guan 已提交
30
sql create dnode $hostname port 7200
31 32 33
system sh/exec.sh -n dnode2 -s start

$x = 0
S
Shengliang Guan 已提交
34
step2:
35 36
	$x = $x + 1
	sleep 1000
S
Shengliang Guan 已提交
37 38
	if $x == 10 then
	  print ====> dnode not ready!
39 40 41
		return -1
	endi
sql show dnodes
S
Shengliang Guan 已提交
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
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 step2
endi
if $data(2)[4] != ready then
  goto step2
endi

sql balance vgroup
sql show dnodes
print dnode1 openVnodes $data(1)[2]
print dnode2 openVnodes $data(2)[2]
if $data(1)[2] != 0 then
	return -1
60
endi
S
Shengliang Guan 已提交
61 62
if $data(2)[2] != 1 then
	return -1
63 64 65
endi

print ========== step3
S
Shengliang Guan 已提交
66
sql create database d2 vgroups 1
67 68 69 70 71 72 73 74
sql create table d2.t2 (t timestamp, i int) 
sql insert into d2.t2 values(now+1s, 25)
sql insert into d2.t2 values(now+2s, 24)
sql insert into d2.t2 values(now+3s, 23)
sql insert into d2.t2 values(now+4s, 22)
sql insert into d2.t2 values(now+5s, 21)

sql show dnodes
S
Shengliang Guan 已提交
75 76 77
print dnode1 openVnodes $data(1)[2]
print dnode2 openVnodes $data(2)[2]
if $data(1)[2] != 0 then
78 79
	return -1
endi
S
Shengliang Guan 已提交
80
if $data(2)[2] != 2 then
81 82 83 84
	return -1
endi

print ========== step4
S
Shengliang Guan 已提交
85
sql drop dnode 2
86
sql show dnodes
S
Shengliang Guan 已提交
87 88 89 90
print dnode1 openVnodes $data(1)[2]
print dnode2 openVnodes $data(2)[2]
if $data(1)[2] != 2 then
	return -1
91
endi
S
Shengliang Guan 已提交
92 93
if $data(2)[2] != null then
	return -1
94 95 96 97 98
endi

system sh/exec.sh -n dnode2 -s stop -x SIGINT

print ========== step5
S
Shengliang Guan 已提交
99
sql create dnode $hostname port 7300
100 101 102
system sh/exec.sh -n dnode3 -s start

$x = 0
S
Shengliang Guan 已提交
103
step5:
104 105
	$x = $x + 1
	sleep 1000
S
Shengliang Guan 已提交
106 107
	if $x == 10 then
	  print ====> dnode not ready!
108 109 110
		return -1
	endi
sql show dnodes
S
Shengliang Guan 已提交
111 112 113 114
print ===> $data00 $data01 $data02 $data03 $data04 $data05
print ===> $data10 $data11 $data12 $data13 $data14 $data15
if $rows != 2 then
  return -1
115
endi
S
Shengliang Guan 已提交
116 117
if $data(1)[4] != ready then
  goto step5
118
endi
S
Shengliang Guan 已提交
119 120 121 122 123 124 125 126 127 128 129 130 131
if $data(3)[4] != ready then
  goto step5
endi

sql balance vgroup
sql show dnodes
print dnode1 openVnodes $data(1)[2]
print dnode2 openVnodes $data(3)[2]
if $data(1)[2] != 1 then
	return -1
endi
if $data(3)[2] != 1 then
	return -1
132 133 134
endi

print ========== step6
S
Shengliang Guan 已提交
135
sql create database d3 vgroups 1
136 137 138 139 140 141 142 143
sql create table d3.t3 (t timestamp, i int)
sql insert into d3.t3 values(now+1s, 35)
sql insert into d3.t3 values(now+2s, 34)
sql insert into d3.t3 values(now+3s, 33)
sql insert into d3.t3 values(now+4s, 32)
sql insert into d3.t3 values(now+5s, 31)

sql show dnodes
S
Shengliang Guan 已提交
144 145 146
print dnode1 openVnodes $data(1)[2]
print dnode2 openVnodes $data(3)[2]
if $data(1)[2] != 1 then
147 148
	return -1
endi
S
Shengliang Guan 已提交
149
if $data(3)[2] != 2 then
150 151 152 153
	return -1
endi

print ========== step7
S
Shengliang Guan 已提交
154
sql create dnode $hostname port 7400
155 156 157
system sh/exec.sh -n dnode4 -s start

$x = 0
S
Shengliang Guan 已提交
158
step7:
159 160
	$x = $x + 1
	sleep 1000
S
Shengliang Guan 已提交
161 162 163
	if $x == 10 then
	  print ====> dnode not ready!
		return -1
164 165
	endi
sql show dnodes
S
Shengliang Guan 已提交
166 167 168 169 170
print ===> $data00 $data01 $data02 $data03 $data04 $data05
print ===> $data10 $data11 $data12 $data13 $data14 $data15
print ===> $data20 $data21 $data22 $data23 $data24 $data25
if $rows != 3 then
  return -1
171
endi
S
Shengliang Guan 已提交
172 173
if $data(1)[4] != ready then
  goto step7
174
endi
S
Shengliang Guan 已提交
175 176
if $data(3)[4] != ready then
  goto step7
177
endi
S
Shengliang Guan 已提交
178 179
if $data(4)[4] != ready then
  goto step7
180 181 182
endi

print ========== step8
S
Shengliang Guan 已提交
183
sql create database d4 vgroups 1
184 185 186 187 188 189 190 191
sql create table d4.t4 (t timestamp, i int)
sql insert into d4.t4 values(now+1s, 45)
sql insert into d4.t4 values(now+2s, 44)
sql insert into d4.t4 values(now+3s, 43)
sql insert into d4.t4 values(now+4s, 42)
sql insert into d4.t4 values(now+5s, 41)

sql show dnodes
S
Shengliang Guan 已提交
192 193 194 195
print dnode1 openVnodes $data(1)[2]
print dnode2 openVnodes $data(3)[2]
print dnode2 openVnodes $data(4)[2]
if $data(1)[2] != 1 then
196 197
	return -1
endi
S
Shengliang Guan 已提交
198
if $data(3)[2] != 2 then
199 200
	return -1
endi
S
Shengliang Guan 已提交
201
if $data(4)[2] != 1 then
202 203 204 205
	return -1
endi

print ========== step9
S
Shengliang Guan 已提交
206
sql drop dnode 3
207
sql show dnodes
S
Shengliang Guan 已提交
208 209 210 211
print dnode1 openVnodes $data(1)[2]
print dnode2 openVnodes $data(4)[2]
if $data(1)[2] != 2 then
	return -1
212
endi
S
Shengliang Guan 已提交
213 214
if $data(4)[2] != 2 then
	return -1
215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301
endi

system sh/exec.sh -n dnode3 -s stop -x SIGINT
sql reset query cache
sleep 100

print ========== step10
sql select * from d1.t1 order by t desc
print $data01 $data11 $data21 $data31 $data41 
if $data01 != 11 then
  return -1
endi
if $data11 != 12 then
  return -1
endi
if $data21 != 13 then
  return -1
endi
if $data31 != 14 then
  return -1
endi
if $data41 != 15 then
  return -1
endi

sql select * from d2.t2 order by t desc
print $data01 $data11 $data21 $data31 $data41 
if $data01 != 21 then
  return -1
endi
if $data11 != 22 then
  return -1
endi
if $data21 != 23 then
  return -1
endi
if $data31 != 24 then
  return -1
endi
if $data41 != 25 then
  return -1
endi

sql select * from d3.t3 order by t desc
print $data01 $data11 $data21 $data31 $data41  
if $data01 != 31 then
  return -1
endi
if $data11 != 32 then
  return -1
endi
if $data21 != 33 then
  return -1
endi
if $data31 != 34 then
  return -1
endi
if $data41 != 35 then
  return -1
endi

sql select * from d4.t4 order by t desc
print $data01 $data11 $data21 $data31 $data41  
if $data01 != 41 then
  return -1
endi
if $data11 != 42 then
  return -1
endi
if $data21 != 43 then
  return -1
endi
if $data31 != 44 then
  return -1
endi
if $data41 != 45 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
system sh/exec.sh -n dnode4 -s stop  -x SIGINT
system sh/exec.sh -n dnode5 -s stop  -x SIGINT
system sh/exec.sh -n dnode6 -s stop  -x SIGINT
system sh/exec.sh -n dnode7 -s stop  -x SIGINT
system sh/exec.sh -n dnode8 -s stop  -x SIGINT