提交 cd662421 编写于 作者: S slguan

[TD-150] deadlock in balance

上级 19895e9b
...@@ -26,6 +26,7 @@ struct SDnodeObj; ...@@ -26,6 +26,7 @@ struct SDnodeObj;
int32_t balanceInit(); int32_t balanceInit();
void balanceCleanUp(); void balanceCleanUp();
void balanceNotify(); void balanceNotify();
void balanceUpdateMgmt();
void balanceReset(); void balanceReset();
int32_t balanceAllocVnodes(struct SVgObj *pVgroup); int32_t balanceAllocVnodes(struct SVgObj *pVgroup);
int32_t balanceDropDnode(struct SDnodeObj *pDnode); int32_t balanceDropDnode(struct SDnodeObj *pDnode);
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
int32_t balanceInit() { return TSDB_CODE_SUCCESS; } int32_t balanceInit() { return TSDB_CODE_SUCCESS; }
void balanceCleanUp() {} void balanceCleanUp() {}
void balanceNotify() {} void balanceNotify() {}
void balanceUpdateMgmt() {}
void balanceReset() {} void balanceReset() {}
int32_t balanceAllocVnodes(SVgObj *pVgroup) { int32_t balanceAllocVnodes(SVgObj *pVgroup) {
......
...@@ -322,6 +322,7 @@ void mgmtProcessDnodeStatusMsg(SRpcMsg *rpcMsg) { ...@@ -322,6 +322,7 @@ void mgmtProcessDnodeStatusMsg(SRpcMsg *rpcMsg) {
if (pDnode->status == TAOS_DN_STATUS_OFFLINE) { if (pDnode->status == TAOS_DN_STATUS_OFFLINE) {
mTrace("dnode:%d, from offline to online", pDnode->dnodeId); mTrace("dnode:%d, from offline to online", pDnode->dnodeId);
pDnode->status = TAOS_DN_STATUS_READY; pDnode->status = TAOS_DN_STATUS_READY;
balanceUpdateMgmt();
balanceNotify(); balanceNotify();
} }
......
system sh/stop_dnodes.sh system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1 system sh/deploy.sh -n dnode1 -i 1
system sh/deploy.sh -n dnode2 -i 2 system sh/deploy.sh -n dnode2 -i 2
system sh/deploy.sh -n dnode3 -i 3 system sh/deploy.sh -n dnode3 -i 3
...@@ -49,8 +44,8 @@ sql insert into d1.t1 values(now+4s, 12) ...@@ -49,8 +44,8 @@ sql insert into d1.t1 values(now+4s, 12)
sql insert into d1.t1 values(now+5s, 11) sql insert into d1.t1 values(now+5s, 11)
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
if $data3_1 != 1 then if $data2_1 != 1 then
return -1 return -1
endi endi
...@@ -68,12 +63,12 @@ show2: ...@@ -68,12 +63,12 @@ show2:
endi endi
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data3_2 print dnode2 openVnodes $data2_2
if $data3_1 != 0 then if $data2_1 != 0 then
goto show2 goto show2
endi endi
if $data3_2 != 1 then if $data2_2 != 1 then
goto show2 goto show2
endi endi
...@@ -87,12 +82,12 @@ sql insert into d2.t2 values(now+4s, 22) ...@@ -87,12 +82,12 @@ sql insert into d2.t2 values(now+4s, 22)
sql insert into d2.t2 values(now+5s, 21) sql insert into d2.t2 values(now+5s, 21)
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data3_2 print dnode2 openVnodes $data2_2
if $data3_1 != 0 then if $data2_1 != 0 then
return -1 return -1
endi endi
if $data3_2 != 2 then if $data2_2 != 2 then
return -1 return -1
endi endi
...@@ -108,12 +103,12 @@ show4: ...@@ -108,12 +103,12 @@ show4:
endi endi
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data3_2 print dnode2 openVnodes $data2_2
if $data3_1 != 2 then if $data2_1 != 2 then
goto show4 goto show4
endi endi
if $data3_2 != null then if $data2_2 != null then
goto show4 goto show4
endi endi
if $rows != 1 then if $rows != 1 then
...@@ -135,16 +130,16 @@ show5: ...@@ -135,16 +130,16 @@ show5:
endi endi
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data3_2 print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data3_3 print dnode3 openVnodes $data2_3
if $data3_1 != 0 then if $data2_1 != 0 then
goto show5 goto show5
endi endi
if $data3_2 != null then if $data2_2 != null then
goto show5 goto show5
endi endi
if $data3_3 != 2 then if $data2_3 != 2 then
goto show5 goto show5
endi endi
...@@ -158,17 +153,17 @@ sql insert into d3.t3 values(now+4s, 32) ...@@ -158,17 +153,17 @@ sql insert into d3.t3 values(now+4s, 32)
sql insert into d3.t3 values(now+5s, 31) sql insert into d3.t3 values(now+5s, 31)
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data3_2 print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data3_3 print dnode3 openVnodes $data2_3
if $data3_1 != 0 then if $data2_1 != 0 then
return -1 return -1
endi endi
if $data3_2 != null then if $data2_2 != null then
return -1 return -1
endi endi
if $data3_3 != 3 then if $data2_3 != 3 then
return -1 return -1
endi endi
...@@ -185,20 +180,20 @@ show7: ...@@ -185,20 +180,20 @@ show7:
endi endi
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data3_2 print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data3_3 print dnode3 openVnodes $data2_3
print dnode4 openVnodes $data3_4 print dnode4 openVnodes $data2_4
if $data3_1 != 0 then if $data2_1 != 0 then
goto show7 goto show7
endi endi
if $data3_2 != null then if $data2_2 != null then
goto show7 goto show7
endi endi
if $data3_3 != 2 then if $data2_3 != 2 then
goto show7 goto show7
endi endi
if $data3_4 != 1 then if $data2_4 != 1 then
goto show7 goto show7
endi endi
...@@ -212,21 +207,21 @@ sql insert into d4.t4 values(now+4s, 42) ...@@ -212,21 +207,21 @@ sql insert into d4.t4 values(now+4s, 42)
sql insert into d4.t4 values(now+5s, 41) sql insert into d4.t4 values(now+5s, 41)
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data3_2 print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data3_3 print dnode3 openVnodes $data2_3
print dnode4 openVnodes $data3_4 print dnode4 openVnodes $data2_4
if $data3_1 != 0 then if $data2_1 != 0 then
return -1 return -1
endi endi
if $data3_2 != null then if $data2_2 != null then
return -1 return -1
endi endi
if $data3_3 != 2 then if $data2_3 != 2 then
return -1 return -1
endi endi
if $data3_4 != 2 then if $data2_4 != 2 then
return -1 return -1
endi endi
...@@ -242,21 +237,21 @@ show9: ...@@ -242,21 +237,21 @@ show9:
endi endi
sql show dnodes sql show dnodes
print dnode1 openVnodes $data3_1 print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data3_2 print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data3_3 print dnode3 openVnodes $data2_3
print dnode4 openVnodes $data3_4 print dnode4 openVnodes $data2_4
if $data3_1 != 0 then if $data2_1 != 0 then
goto show9 goto show9
endi endi
if $data3_2 != null then if $data2_2 != null then
goto show9 goto show9
endi endi
if $data3_3 != null then if $data2_3 != null then
goto show9 goto show9
endi endi
if $data3_4 != 4 then if $data2_4 != 4 then
goto show9 goto show9
endi endi
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册