enh: add creating and dropping states to mnode
This commit is contained in:
parent
1907c0e66c
commit
d56c574fe4
|
@ -1006,6 +1006,9 @@ static int32_t mndTransExecuteRedoActionsSerial(SMnode *pMnode, STrans *pTrans)
|
||||||
if (pAction->msgReceived) {
|
if (pAction->msgReceived) {
|
||||||
if (pAction->errCode != 0 && pAction->errCode != pAction->acceptableCode) {
|
if (pAction->errCode != 0 && pAction->errCode != pAction->acceptableCode) {
|
||||||
code = pAction->errCode;
|
code = pAction->errCode;
|
||||||
|
pAction->msgSent = 0;
|
||||||
|
pAction->msgReceived = 0;
|
||||||
|
mDebug("trans:%d, %s:%d execute status is reset", pTrans->id, mndTransStr(pAction->stage), action);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
code = TSDB_CODE_ACTION_IN_PROGRESS;
|
code = TSDB_CODE_ACTION_IN_PROGRESS;
|
||||||
|
|
|
@ -57,6 +57,8 @@
|
||||||
# ---- mnode
|
# ---- mnode
|
||||||
./test.sh -f tsim/mnode/basic1.sim
|
./test.sh -f tsim/mnode/basic1.sim
|
||||||
./test.sh -f tsim/mnode/basic2.sim
|
./test.sh -f tsim/mnode/basic2.sim
|
||||||
|
./test.sh -f tsim/mnode/basic3.sim
|
||||||
|
./test.sh -f tsim/mnode/basic4.sim
|
||||||
|
|
||||||
# ---- show
|
# ---- show
|
||||||
./test.sh -f tsim/show/basic.sim
|
./test.sh -f tsim/show/basic.sim
|
||||||
|
|
|
@ -28,7 +28,7 @@ endi
|
||||||
print =============== step2: create mnode 2
|
print =============== step2: create mnode 2
|
||||||
sql create mnode on dnode 2
|
sql create mnode on dnode 2
|
||||||
sql_error create mnode on dnode 3
|
sql_error create mnode on dnode 3
|
||||||
return
|
|
||||||
system sh/exec.sh -n dnode3 -s start
|
system sh/exec.sh -n dnode3 -s start
|
||||||
|
|
||||||
$x = 0
|
$x = 0
|
||||||
|
@ -46,7 +46,6 @@ if $data(2)[4] != ready then
|
||||||
goto step2
|
goto step2
|
||||||
endi
|
endi
|
||||||
|
|
||||||
sleep 2000
|
|
||||||
system sh/exec.sh -n dnode3 -s stop
|
system sh/exec.sh -n dnode3 -s stop
|
||||||
sql_error create mnode on dnode 3
|
sql_error create mnode on dnode 3
|
||||||
|
|
||||||
|
@ -94,6 +93,10 @@ step4:
|
||||||
return -1
|
return -1
|
||||||
endi
|
endi
|
||||||
sql show mnodes -x step4
|
sql show mnodes -x step4
|
||||||
|
print $data[0][0] $data[0][1] $data[0][2] $data[0][3] $data[0][4]
|
||||||
|
print $data[1][0] $data[1][1] $data[1][2] $data[1][3] $data[1][4]
|
||||||
|
print $data[2][0] $data[2][1] $data[2][2] $data[2][3] $data[2][4]
|
||||||
|
|
||||||
if $data(1)[2] != LEADER then
|
if $data(1)[2] != LEADER then
|
||||||
goto step4
|
goto step4
|
||||||
endi
|
endi
|
||||||
|
@ -114,92 +117,75 @@ if $data(3)[3] != READY then
|
||||||
endi
|
endi
|
||||||
|
|
||||||
print =============== step5: drop mnode 3 and stop dnode3
|
print =============== step5: drop mnode 3 and stop dnode3
|
||||||
|
system sh/exec.sh -n dnode3 -s stop
|
||||||
return
|
sql_error drop mnode on dnode 3
|
||||||
|
|
||||||
print =============== step3: create user
|
|
||||||
sql create user user1 PASS 'user1'
|
|
||||||
sql show users
|
|
||||||
if $rows != 2 then
|
|
||||||
return -1
|
|
||||||
endi
|
|
||||||
|
|
||||||
# wait mnode2 mnode3 recv data finish
|
|
||||||
sleep 10000
|
|
||||||
|
|
||||||
print =============== step4: stop dnode1
|
|
||||||
system sh/exec.sh -n dnode1 -s stop
|
|
||||||
|
|
||||||
$x = 0
|
|
||||||
step4:
|
|
||||||
$x = $x + 1
|
|
||||||
sleep 1000
|
|
||||||
if $x == 50 then
|
|
||||||
return -1
|
|
||||||
endi
|
|
||||||
sql show mnodes -x step4
|
|
||||||
print $data(1)[0] $data(1)[1] $data(1)[2]
|
|
||||||
print $data(2)[0] $data(2)[1] $data(2)[2]
|
|
||||||
print $data(3)[0] $data(3)[1] $data(3)[2]
|
|
||||||
|
|
||||||
sql show users
|
|
||||||
if $rows != 2 then
|
|
||||||
return -1
|
|
||||||
endi
|
|
||||||
|
|
||||||
sleep 1000
|
|
||||||
sql show dnodes
|
|
||||||
if $data(2)[4] != ready then
|
|
||||||
return -1
|
|
||||||
endi
|
|
||||||
if $data(3)[4] != ready then
|
|
||||||
return -1
|
|
||||||
endi
|
|
||||||
|
|
||||||
print =============== step5: stop dnode1
|
|
||||||
system sh/exec.sh -n dnode1 -s start
|
|
||||||
system sh/exec.sh -n dnode2 -s stop
|
|
||||||
|
|
||||||
$x = 0
|
$x = 0
|
||||||
step5:
|
step5:
|
||||||
$x = $x + 1
|
$x = $x + 1
|
||||||
sleep 1000
|
sleep 1000
|
||||||
if $x == 50 then
|
if $x == 10 then
|
||||||
return -1
|
return -1
|
||||||
endi
|
endi
|
||||||
sql show mnodes -x step5
|
sql show mnodes -x step5
|
||||||
print $data(1)[0] $data(1)[1] $data(1)[2]
|
print $data[0][0] $data[0][1] $data[0][2] $data[0][3] $data[0][4]
|
||||||
print $data(2)[0] $data(2)[1] $data(2)[2]
|
print $data[1][0] $data[1][1] $data[1][2] $data[1][3] $data[1][4]
|
||||||
print $data(3)[0] $data(3)[1] $data(3)[2]
|
print $data[2][0] $data[2][1] $data[2][2] $data[2][3] $data[2][4]
|
||||||
|
|
||||||
if $data(2)[2] != OFFLINE then
|
if $data(1)[2] != LEADER then
|
||||||
|
goto step5
|
||||||
|
endi
|
||||||
|
if $data(2)[2] != FOLLOWER then
|
||||||
|
goto step5
|
||||||
|
endi
|
||||||
|
if $data(3)[2] != OFFLINE then
|
||||||
|
goto step5
|
||||||
|
endi
|
||||||
|
if $data(1)[3] != READY then
|
||||||
|
goto step5
|
||||||
|
endi
|
||||||
|
if $data(2)[3] != READY then
|
||||||
|
goto step5
|
||||||
|
endi
|
||||||
|
if $data(3)[3] != DROPPING then
|
||||||
goto step5
|
goto step5
|
||||||
endi
|
endi
|
||||||
|
|
||||||
sql show users
|
print =============== step6: start dnode3
|
||||||
if $rows != 2 then
|
system sh/exec.sh -n dnode3 -s start
|
||||||
return -1
|
|
||||||
endi
|
|
||||||
|
|
||||||
print =============== step6: stop dnode1
|
|
||||||
system sh/exec.sh -n dnode2 -s start
|
|
||||||
system sh/exec.sh -n dnode3 -s stop
|
|
||||||
|
|
||||||
$x = 0
|
$x = 0
|
||||||
step6:
|
step6:
|
||||||
$x = $x + 1
|
$x = $x + 1
|
||||||
sleep 1000
|
sleep 1000
|
||||||
if $x == 50 then
|
if $x == 10 then
|
||||||
return -1
|
return -1
|
||||||
endi
|
endi
|
||||||
sql show mnodes -x step6
|
sql show mnodes -x step6
|
||||||
print $data(1)[0] $data(1)[1] $data(1)[2]
|
print $data[0][0] $data[0][1] $data[0][2] $data[0][3] $data[0][4]
|
||||||
print $data(2)[0] $data(2)[1] $data(2)[2]
|
print $data[1][0] $data[1][1] $data[1][2] $data[1][3] $data[1][4]
|
||||||
print $data(3)[0] $data(3)[1] $data(3)[2]
|
print $data[2][0] $data[2][1] $data[2][2] $data[2][3] $data[2][4]
|
||||||
|
|
||||||
sql show users
|
|
||||||
if $rows != 2 then
|
if $rows != 2 then
|
||||||
return -1
|
goto step6
|
||||||
|
endi
|
||||||
|
if $data(1)[2] != LEADER then
|
||||||
|
goto step6
|
||||||
|
endi
|
||||||
|
if $data(2)[2] != FOLLOWER then
|
||||||
|
goto step6
|
||||||
|
endi
|
||||||
|
if $data(3)[2] != null then
|
||||||
|
goto step6
|
||||||
|
endi
|
||||||
|
if $data(1)[3] != READY then
|
||||||
|
goto step6
|
||||||
|
endi
|
||||||
|
if $data(2)[3] != READY then
|
||||||
|
goto step6
|
||||||
|
endi
|
||||||
|
if $data(3)[3] != null then
|
||||||
|
goto step6
|
||||||
endi
|
endi
|
||||||
|
|
||||||
system sh/exec.sh -n dnode1 -s stop
|
system sh/exec.sh -n dnode1 -s stop
|
||||||
|
|
Loading…
Reference in New Issue