redistribute_vgroup_replica3_v1_leader.sim 9.7 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
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/deploy.sh -n dnode5 -i 5
system sh/cfg.sh -n dnode1 -c supportVnodes -v 0
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
#system sh/exec.sh -n dnode5 -s start
sql connect
sql create user u1 pass 'taosdata'

print =============== step1 create dnode2
sql create dnode $hostname port 7200
sql create dnode $hostname port 7300
sql create dnode $hostname port 7400
sql create dnode $hostname port 7500

$x = 0
step1:
24
	$x = $x + 1
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
	sleep 1000
	if $x == 10 then
	  print ====> dnode not ready!
		return -1
	endi
sql show dnodes
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 $data34 $data35
print ===> $data40 $data41 $data42 $data43 $data44 $data45
if $rows != 5 then
  return -1
endi
if $data(1)[4] != ready then
  goto step1
endi
if $data(2)[4] != ready then
  goto step1
endi
if $data(3)[4] != ready then
  goto step1
endi
if $data(4)[4] != ready then
  goto step1
endi
#if $data(5)[4] != ready then
#  goto step1
#endi

print =============== step2: create db
sql create database d1 vgroups 1 replica 3

S
Shengliang Guan 已提交
58 59 60
# dnode not exist
sql_error redistribute vgroup 3 dnode 6 dnode 3 dnode 4 
# vgroup not exist
61 62 63 64 65 66 67 68 69 70 71 72 73
sql_error redistribute vgroup 3 dnode 5 dnode 3 dnode 4 
# un changed
sql_error redistribute vgroup 2 dnode 2 dnode 3 dnode 4
# no enought vnodes
sql_error redistribute vgroup 2 dnode 1 dnode 3 dnode 4 
# offline vnodes
sql_error redistribute vgroup 2 dnode 5 dnode 3 dnode 4 
# Invalid replica
sql_error redistribute vgroup 2 dnode 5 
sql_error redistribute vgroup 2 dnode 5 dnode 3 
sql_error redistribute vgroup 2 dnode 2 dnode 3 
sql_error redistribute vgroup 2 dnode 2 dnode 2 
sql_error redistribute vgroup 3 dnode 2 dnode 2 
74
sql_error redistribute vgroup 2 dnode 2 dnode 2 dnode 3 
75 76 77 78

system sh/exec.sh -n dnode5 -s start
$x = 0
step2:
79
	$x = $x + 1
80 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 108 109
	sleep 1000
	if $x == 10 then
	  print ====> dnode not ready!
		return -1
	endi
sql show dnodes
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 $data34 $data35
print ===> $data40 $data41 $data42 $data43 $data44 $data45
if $rows != 5 then
  return -1
endi
if $data(1)[4] != ready then
  goto step2
endi
if $data(2)[4] != ready then
  goto step2
endi
if $data(3)[4] != ready then
  goto step2
endi
if $data(4)[4] != ready then
  goto step2
endi
if $data(5)[4] != ready then
  goto step2
endi

110
print =============== step31: move follower
111 112 113 114 115 116 117
$leaderExist = 0
$leaderVnode = 0
$follower1 = 0
$follower2 = 0

$x = 0
step3:
118
	$x = $x + 1
119
	sleep 1000
120
	if $x == 60 then
121 122 123 124
	  print ====> db not ready!
		return -1
	endi
sql show d1.vgroups
125
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
126 127 128
if $rows != 1 then
  return -1
endi
129
if $data(2)[4] == leader then
130 131 132 133 134
  $leaderExist = 1
  $leaderVnode = 4
  $follower1 = 2
  $follower2 = 3
endi
135
if $data(2)[6] == leader then
136 137 138 139 140
  $leaderExist = 1
  $leaderVnode = 3
  $follower1 = 2
  $follower2 = 4
endi
141
if $data(2)[8] == leader then
142 143 144 145 146 147 148 149 150
  $leaderExist = 1
  $leaderVnode = 2
  $follower1 = 3
  $follower2 = 4
endi
if  $leaderExist != 1 then
  goto step3
endi

151 152 153 154
print leader $leaderVnode
print follower1 $follower1
print follower2 $follower2

155 156 157 158 159 160 161 162
sql use d1
sql create table d1.st (ts timestamp, i int) tags (j int)
sql create table d1.c1 using st tags(1)
sql show d1.tables
if $rows != 1 then
  return -1
endi

X
Xiaoyu Wang 已提交
163
<<<<<<< HEAD
164 165 166
print =============== step32: move follower2
print redistribute vgroup 2 dnode $leaderVnode dnode $follower2 dnode 5 
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower2 dnode 5 
X
Xiaoyu Wang 已提交
167 168 169 170 171 172 173
<<<<<<< HEAD:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim
=======
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09

>>>>>>> origin/3.0:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_follower.sim
=======
S
Shengliang Guan 已提交
174 175 176 177 178 179
print =============== step32: move leader
print redistribute vgroup 2 dnode $follower1 dnode $follower2 dnode 5 
sql redistribute vgroup 2 dnode $follower1 dnode $follower2 dnode 5 
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09

X
Xiaoyu Wang 已提交
180
>>>>>>> origin/3.0
181 182 183 184 185
sql show d1.tables
if $rows != 1 then
  return -1
endi

X
Xiaoyu Wang 已提交
186
<<<<<<< HEAD
187 188 189
print =============== step33: move follower1
print redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode 5 
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode 5 
X
Xiaoyu Wang 已提交
190 191 192 193 194 195 196
<<<<<<< HEAD:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim
=======
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09

>>>>>>> origin/3.0:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_follower.sim
=======
S
Shengliang Guan 已提交
197
print =============== step33: move follower2
198 199
print redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode 5 
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode 5 
S
Shengliang Guan 已提交
200 201 202
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09

X
Xiaoyu Wang 已提交
203
>>>>>>> origin/3.0
204 205 206 207
sql show d1.tables
if $rows != 1 then
  return -1
endi
208

X
Xiaoyu Wang 已提交
209
<<<<<<< HEAD
210 211 212
print =============== step34: move follower2
print redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode $follower2
sql redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode $follower2
X
Xiaoyu Wang 已提交
213 214 215 216 217 218 219
<<<<<<< HEAD:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim
=======
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09

>>>>>>> origin/3.0:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_follower.sim
=======
S
Shengliang Guan 已提交
220 221 222 223 224 225
print =============== step34: move follower1
print redistribute vgroup 2 dnode $follower2 dnode 5 dnode $leaderVnode
sql redistribute vgroup 2 dnode $follower2 dnode 5 dnode $leaderVnode
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09

X
Xiaoyu Wang 已提交
226
>>>>>>> origin/3.0
227 228 229 230
sql show d1.tables
if $rows != 1 then
  return -1
endi
231

X
Xiaoyu Wang 已提交
232
<<<<<<< HEAD
233 234 235
print =============== step35: move follower1
print redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode $follower1
sql redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode $follower1
X
Xiaoyu Wang 已提交
236 237 238 239 240 241 242 243 244 245
<<<<<<< HEAD:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim
sql show d1.tables
if $rows != 1 then
  return -1
endi
=======
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
>>>>>>> origin/3.0:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_follower.sim
=======
S
Shengliang Guan 已提交
246 247 248 249 250
print =============== step35: move 5
print redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode $follower2
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode $follower2
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
X
Xiaoyu Wang 已提交
251
>>>>>>> origin/3.0
S
Shengliang Guan 已提交
252

S
Shengliang Guan 已提交
253 254 255 256
sql show d1.tables
if $rows != 1 then
  return -1
endi
257

X
Xiaoyu Wang 已提交
258 259 260 261 262
<<<<<<< HEAD
print =============== step36: move follower2
print redistribute vgroup 2 dnode $leaderVnode dnode $follower2 dnode 5 
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower2 dnode 5 
=======
S
Shengliang Guan 已提交
263 264 265
print =============== step36: move follower1
print redistribute vgroup 2 dnode $follower1 dnode $follower2 dnode 5 
sql redistribute vgroup 2 dnode $follower1 dnode $follower2 dnode 5 
X
Xiaoyu Wang 已提交
266
>>>>>>> origin/3.0
S
Shengliang Guan 已提交
267 268 269
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09

270 271 272 273
sql show d1.tables
if $rows != 1 then
  return -1
endi
274

X
Xiaoyu Wang 已提交
275 276 277
<<<<<<< HEAD
print =============== step37: move follower1
=======
S
Shengliang Guan 已提交
278
print =============== step37: move follower2
X
Xiaoyu Wang 已提交
279
>>>>>>> origin/3.0
S
Shengliang Guan 已提交
280 281 282 283
print redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode 5 
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode 5 
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
284

S
Shengliang Guan 已提交
285 286 287 288
sql show d1.tables
if $rows != 1 then
  return -1
endi
289

X
Xiaoyu Wang 已提交
290 291 292 293 294 295 296
<<<<<<< HEAD
<<<<<<< HEAD:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim
=======
print =============== step38: move follower2
print redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode $follower2
sql redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode $follower2
=======
S
Shengliang Guan 已提交
297 298 299
print =============== step38: move leader
print redistribute vgroup 2 dnode $follower1 dnode 5 dnode $follower2
sql redistribute vgroup 2 dnode $follower1 dnode 5 dnode $follower2
X
Xiaoyu Wang 已提交
300
>>>>>>> origin/3.0
S
Shengliang Guan 已提交
301 302
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
303

S
Shengliang Guan 已提交
304 305 306 307
sql show d1.tables
if $rows != 1 then
  return -1
endi
X
Xiaoyu Wang 已提交
308 309 310 311 312 313 314
<<<<<<< HEAD
>>>>>>> origin/3.0:tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_follower.sim

print =============== step39: move follower1
print redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode $follower1
sql redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode $follower1
=======
315

S
Shengliang Guan 已提交
316 317 318
print =============== step39: move 5
print redistribute vgroup 2 dnode $leaderVnode dnode $follower2 dnode $follower1
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower2 dnode $follower1
X
Xiaoyu Wang 已提交
319
>>>>>>> origin/3.0
S
Shengliang Guan 已提交
320 321
sql show d1.vgroups
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
322

S
Shengliang Guan 已提交
323 324 325 326
sql show d1.tables
if $rows != 1 then
  return -1
endi
327 328 329 330 331 332

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