balance_replica1.sim 2.6 KB
Newer Older
S
Shengliang Guan 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
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/cfg.sh -n dnode1 -c supportVnodes -v 0
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode2 -s start
sql connect

print =============== step1 create dnode2
# no enough vnodes
sql balance vgroup

sql create dnode $hostname port 7200
sql create dnode $hostname port 7300

$x = 0
step1:
	$ = $x + 1
	sleep 1000
	if $x == 10 then
	  print ---> dnode not online!
		return -1
	endi
X
Xiaoyu Wang 已提交
25
sql select * from information_schema.ins_dnodes
S
Shengliang Guan 已提交
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 76 77 78 79 80
print ---> $data00 $data01 $data02 $data03 $data04 $data05
print ---> $data10 $data11 $data12 $data13 $data14 $data15
if $rows != 3 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] != offline then
  goto step1
endi

print =============== step2 create database
sql create database d1 vgroups 2
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 create table d1.c2 using st tags(1)
sql create table d1.c3 using st tags(1)
sql create table d1.c4 using st tags(1)
sql create table d1.c5 using st tags(1)
sql create table d1.c6 using st tags(1)
sql show d1.tables
if $rows != 6 then
  return -1
endi

sql show d1.vgroups
print $data[0][0] $data[0][1] $data[0][2] $data[0][3] $data[0][4] 
if $rows != 2 then
  return -1
endi
if $data(2)[3] != 2 then
  return -1
endi
if $data(3)[3] != 2 then
  return -1
endi

print =============== step3: balance vgroup
# has offline dnode
sql_error balance vgroup

system sh/exec.sh -n dnode3 -s start
$x = 0
step3:
	$ = $x + 1
	sleep 1000
	if $x == 10 then
	  print ---> dnode not online!
		return -1
	endi
X
Xiaoyu Wang 已提交
81
sql select * from information_schema.ins_dnodes
S
Shengliang Guan 已提交
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 110 111 112 113 114 115 116 117 118 119 120 121 122
print ---> $data00 $data01 $data02 $data03 $data04 $data05
print ---> $data10 $data11 $data12 $data13 $data14 $data15
if $rows != 3 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

print =============== step4: balance
sql balance vgroup

print show d1.vgroups
sql show d1.vgroups
print $data[0][0] $data[0][1] $data[0][2] $data[0][3] $data[0][4] 
if $rows != 2 then
  return -1
endi
if $data(2)[3] != 3 then
  return -1
endi
if $data(3)[3] != 2 then
  return -1
endi

print =============== step7: select data
sql show d1.tables
print rows $rows
if $rows != 6 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