Merge pull request #14289 from taosdata/fix/mnode
enh: add retryCode for transaction
This commit is contained in:
commit
f040d01812
|
@ -1188,6 +1188,7 @@ static int32_t mndTransExecuteRedoActionsSerial(SMnode *pMnode, STrans *pTrans)
|
||||||
} else if (code == pAction->retryCode) {
|
} else if (code == pAction->retryCode) {
|
||||||
mDebug("trans:%d, %s:%d receive code:0x%x and retry", pTrans->id, mndTransStr(pAction->stage), pAction->id, code);
|
mDebug("trans:%d, %s:%d receive code:0x%x and retry", pTrans->id, mndTransStr(pAction->stage), pAction->id, code);
|
||||||
taosMsleep(300);
|
taosMsleep(300);
|
||||||
|
action--;
|
||||||
continue;
|
continue;
|
||||||
} else {
|
} else {
|
||||||
terrno = code;
|
terrno = code;
|
||||||
|
|
|
@ -29,8 +29,11 @@
|
||||||
#./test.sh -f tsim/dnode/drop_dnode_has_vnode_replica3.sim
|
#./test.sh -f tsim/dnode/drop_dnode_has_vnode_replica3.sim
|
||||||
#./test.sh -f tsim/dnode/drop_dnode_has_multi_vnode_replica1.sim
|
#./test.sh -f tsim/dnode/drop_dnode_has_multi_vnode_replica1.sim
|
||||||
#./test.sh -f tsim/dnode/drop_dnode_has_multi_vnode_replica3.sim
|
#./test.sh -f tsim/dnode/drop_dnode_has_multi_vnode_replica3.sim
|
||||||
|
./test.sh -f tsim/dnode/redistribute_vgroup_replica1.sim
|
||||||
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim
|
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim
|
||||||
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v1_follower.sim
|
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v1_follower.sim
|
||||||
|
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v2.sim
|
||||||
|
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v3.sim
|
||||||
|
|
||||||
# ---- insert
|
# ---- insert
|
||||||
./test.sh -f tsim/insert/basic0.sim
|
./test.sh -f tsim/insert/basic0.sim
|
||||||
|
|
|
@ -0,0 +1,178 @@
|
||||||
|
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/cfg.sh -n dnode1 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode2 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode3 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode4 -c transPullupInterval -v 1
|
||||||
|
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
|
||||||
|
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
|
||||||
|
|
||||||
|
$x = 0
|
||||||
|
step1:
|
||||||
|
$x = $x + 1
|
||||||
|
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
|
||||||
|
if $rows != 4 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 db
|
||||||
|
sql create database d1 vgroups 1 replica 1
|
||||||
|
|
||||||
|
system sh/exec.sh -n dnode3 -s start
|
||||||
|
system sh/exec.sh -n dnode4 -s start
|
||||||
|
$x = 0
|
||||||
|
step2:
|
||||||
|
$x = $x + 1
|
||||||
|
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
|
||||||
|
if $rows != 4 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
|
||||||
|
|
||||||
|
print =============== step3: create database
|
||||||
|
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
|
||||||
|
|
||||||
|
print =============== step40:
|
||||||
|
print redistribute vgroup 2 dnode 3
|
||||||
|
sql redistribute vgroup 2 dnode 3
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step41:
|
||||||
|
print redistribute vgroup 2 dnode 4
|
||||||
|
sql redistribute vgroup 2 dnode 4
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step42:
|
||||||
|
print redistribute vgroup 2 dnode 2
|
||||||
|
sql redistribute vgroup 2 dnode 2
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step43:
|
||||||
|
print redistribute vgroup 2 dnode 3
|
||||||
|
sql redistribute vgroup 2 dnode 3
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step44:
|
||||||
|
print redistribute vgroup 2 dnode 4
|
||||||
|
sql redistribute vgroup 2 dnode 4
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step45:
|
||||||
|
print redistribute vgroup 2 dnode 2
|
||||||
|
sql redistribute vgroup 2 dnode 2
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step46:
|
||||||
|
print redistribute vgroup 2 dnode 3
|
||||||
|
sql redistribute vgroup 2 dnode 3
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step47:
|
||||||
|
print redistribute vgroup 2 dnode 2
|
||||||
|
sql redistribute vgroup 2 dnode 2
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
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
|
||||||
|
system sh/exec.sh -n dnode4 -s stop -x SIGINT
|
|
@ -0,0 +1,245 @@
|
||||||
|
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/deploy.sh -n dnode6 -i 6
|
||||||
|
system sh/cfg.sh -n dnode1 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode2 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode3 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode4 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode5 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode6 -c transPullupInterval -v 1
|
||||||
|
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
|
||||||
|
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
|
||||||
|
sql create dnode $hostname port 7600
|
||||||
|
|
||||||
|
$x = 0
|
||||||
|
step1:
|
||||||
|
$x = $x + 1
|
||||||
|
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 != 6 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
|
||||||
|
|
||||||
|
print =============== step2: create db
|
||||||
|
sql create database d1 vgroups 1 replica 3
|
||||||
|
|
||||||
|
system sh/exec.sh -n dnode5 -s start
|
||||||
|
system sh/exec.sh -n dnode6 -s start
|
||||||
|
$x = 0
|
||||||
|
step2:
|
||||||
|
$x = $x + 1
|
||||||
|
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 != 6 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
|
||||||
|
if $data(6)[4] != ready then
|
||||||
|
goto step2
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step3: create database
|
||||||
|
$leaderExist = 0
|
||||||
|
$leaderVnode = 0
|
||||||
|
$follower1 = 0
|
||||||
|
$follower2 = 0
|
||||||
|
|
||||||
|
$x = 0
|
||||||
|
step3:
|
||||||
|
$x = $x + 1
|
||||||
|
sleep 1000
|
||||||
|
if $x == 60 then
|
||||||
|
print ====> db not ready!
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data(2)[4] == leader then
|
||||||
|
$leaderExist = 1
|
||||||
|
$leaderVnode = 2
|
||||||
|
$follower1 = 3
|
||||||
|
$follower2 = 4
|
||||||
|
endi
|
||||||
|
if $data(2)[6] == leader then
|
||||||
|
$leaderExist = 1
|
||||||
|
$leaderVnode = 3
|
||||||
|
$follower1 = 2
|
||||||
|
$follower2 = 4
|
||||||
|
endi
|
||||||
|
if $data(2)[8] == leader then
|
||||||
|
$leaderExist = 1
|
||||||
|
$leaderVnode = 4
|
||||||
|
$follower1 = 2
|
||||||
|
$follower2 = 3
|
||||||
|
endi
|
||||||
|
if $leaderExist != 1 then
|
||||||
|
goto step3
|
||||||
|
endi
|
||||||
|
|
||||||
|
print leader $leaderVnode
|
||||||
|
print follower1 $follower1
|
||||||
|
print follower2 $follower2
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
print =============== step40:
|
||||||
|
print redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode 6
|
||||||
|
sql redistribute vgroup 2 dnode $leaderVnode dnode 5 dnode 6
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step41:
|
||||||
|
print redistribute vgroup 2 dnode 5 dnode $follower2 dnode $follower1
|
||||||
|
sql redistribute vgroup 2 dnode 5 dnode $follower2 dnode $follower1
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step42:
|
||||||
|
print redistribute vgroup 2 dnode $follower2 dnode 6 dnode $leaderVnode
|
||||||
|
sql redistribute vgroup 2 dnode $follower2 dnode 6 dnode $leaderVnode
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step43:
|
||||||
|
print redistribute vgroup 2 dnode $follower1 dnode 5 dnode 6
|
||||||
|
sql redistribute vgroup 2 dnode $follower1 dnode 5 dnode 6
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step44:
|
||||||
|
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
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step45:
|
||||||
|
print redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode 6
|
||||||
|
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower1 dnode 6
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step46:
|
||||||
|
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
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step47:
|
||||||
|
print redistribute vgroup 2 dnode $follower1 dnode 6 dnode $leaderVnode
|
||||||
|
sql redistribute vgroup 2 dnode $follower1 dnode 6 dnode $leaderVnode
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
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
|
||||||
|
system sh/exec.sh -n dnode4 -s stop -x SIGINT
|
||||||
|
system sh/exec.sh -n dnode5 -s stop -x SIGINT
|
|
@ -0,0 +1,263 @@
|
||||||
|
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/deploy.sh -n dnode6 -i 6
|
||||||
|
system sh/deploy.sh -n dnode7 -i 7
|
||||||
|
system sh/deploy.sh -n dnode8 -i 8
|
||||||
|
system sh/cfg.sh -n dnode1 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode2 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode3 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode4 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode5 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode6 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode7 -c transPullupInterval -v 1
|
||||||
|
system sh/cfg.sh -n dnode8 -c transPullupInterval -v 1
|
||||||
|
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
|
||||||
|
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
|
||||||
|
sql create dnode $hostname port 7600
|
||||||
|
sql create dnode $hostname port 7700
|
||||||
|
sql create dnode $hostname port 7800
|
||||||
|
|
||||||
|
$x = 0
|
||||||
|
step1:
|
||||||
|
$x = $x + 1
|
||||||
|
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 != 8 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
|
||||||
|
|
||||||
|
print =============== step2: create db
|
||||||
|
sql create database d1 vgroups 1 replica 3
|
||||||
|
|
||||||
|
system sh/exec.sh -n dnode5 -s start
|
||||||
|
system sh/exec.sh -n dnode6 -s start
|
||||||
|
system sh/exec.sh -n dnode7 -s start
|
||||||
|
system sh/exec.sh -n dnode8 -s start
|
||||||
|
$x = 0
|
||||||
|
step2:
|
||||||
|
$x = $x + 1
|
||||||
|
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 != 8 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
|
||||||
|
if $data(6)[4] != ready then
|
||||||
|
goto step2
|
||||||
|
endi
|
||||||
|
if $data(7)[4] != ready then
|
||||||
|
goto step2
|
||||||
|
endi
|
||||||
|
if $data(8)[4] != ready then
|
||||||
|
goto step2
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step3: create database
|
||||||
|
$leaderExist = 0
|
||||||
|
$leaderVnode = 0
|
||||||
|
$follower1 = 0
|
||||||
|
$follower2 = 0
|
||||||
|
|
||||||
|
$x = 0
|
||||||
|
step3:
|
||||||
|
$x = $x + 1
|
||||||
|
sleep 1000
|
||||||
|
if $x == 60 then
|
||||||
|
print ====> db not ready!
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data(2)[4] == leader then
|
||||||
|
$leaderExist = 1
|
||||||
|
$leaderVnode = 2
|
||||||
|
$follower1 = 3
|
||||||
|
$follower2 = 4
|
||||||
|
endi
|
||||||
|
if $data(2)[6] == leader then
|
||||||
|
$leaderExist = 1
|
||||||
|
$leaderVnode = 3
|
||||||
|
$follower1 = 2
|
||||||
|
$follower2 = 4
|
||||||
|
endi
|
||||||
|
if $data(2)[8] == leader then
|
||||||
|
$leaderExist = 1
|
||||||
|
$leaderVnode = 4
|
||||||
|
$follower1 = 2
|
||||||
|
$follower2 = 3
|
||||||
|
endi
|
||||||
|
if $leaderExist != 1 then
|
||||||
|
goto step3
|
||||||
|
endi
|
||||||
|
|
||||||
|
print leader $leaderVnode
|
||||||
|
print follower1 $follower1
|
||||||
|
print follower2 $follower2
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
print =============== step40:
|
||||||
|
print redistribute vgroup 2 dnode 7 dnode 5 dnode 6
|
||||||
|
sql redistribute vgroup 2 dnode 7 dnode 5 dnode 6
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step41:
|
||||||
|
print redistribute vgroup 2 dnode $leaderVnode dnode $follower2 dnode $follower1
|
||||||
|
sql redistribute vgroup 2 dnode $leaderVnode dnode $follower2 dnode $follower1
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step42:
|
||||||
|
print redistribute vgroup 2 dnode 7 dnode 6 dnode 8
|
||||||
|
sql redistribute vgroup 2 dnode 7 dnode 6 dnode 8
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step43:
|
||||||
|
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
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
|
||||||
|
return
|
||||||
|
|
||||||
|
|
||||||
|
print =============== step44:
|
||||||
|
print redistribute vgroup 2 dnode 6 dnode 7 dnode $leaderVnode
|
||||||
|
sql redistribute vgroup 2 dnode 6 dnode 7 dnode $leaderVnode
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step45:
|
||||||
|
print redistribute vgroup 2 dnode $follower1 dnode $follower2 dnode 8
|
||||||
|
sql redistribute vgroup 2dnode $follower1 dnode $follower2 dnode 8
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step46:
|
||||||
|
print redistribute vgroup 2 dnode $leaderVnode dnode 6 dnode 5
|
||||||
|
sql redistribute vgroup 2 dnode $leaderVnode dnode 6 dnode 5
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
if $rows != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step47:
|
||||||
|
print redistribute vgroup 2 dnode $follower1 dnode 7 dnode 8
|
||||||
|
sql redistribute vgroup 2 dnode $follower1 dnode 7 dnode 8
|
||||||
|
sql show d1.vgroups
|
||||||
|
print ===> $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
|
||||||
|
sql show d1.tables
|
||||||
|
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
|
||||||
|
system sh/exec.sh -n dnode4 -s stop -x SIGINT
|
||||||
|
system sh/exec.sh -n dnode5 -s stop -x SIGINT
|
Loading…
Reference in New Issue