提交 b6d3d232 编写于 作者: S Shengliang Guan

fix: cannot close vnode while transferring snapshot

上级 4b11f358
...@@ -515,6 +515,16 @@ void vnodeSyncPreClose(SVnode *pVnode) { ...@@ -515,6 +515,16 @@ void vnodeSyncPreClose(SVnode *pVnode) {
vInfo("vgId:%d, pre close sync", pVnode->config.vgId); vInfo("vgId:%d, pre close sync", pVnode->config.vgId);
syncLeaderTransfer(pVnode->sync); syncLeaderTransfer(pVnode->sync);
syncPreStop(pVnode->sync); syncPreStop(pVnode->sync);
while (!syncSnapshotRecving(pVnode->sync)) {
vInfo("vgId:%s, snapshot is recving");
taosMsleep(300);
}
while (!syncSnapshotSending(pVnode->sync)) {
vInfo("vgId:%s, snapshot is sending");
taosMsleep(300);
}
taosThreadMutexLock(&pVnode->lock); taosThreadMutexLock(&pVnode->lock);
if (pVnode->blocked) { if (pVnode->blocked) {
vInfo("vgId:%d, post block after close sync", pVnode->config.vgId); vInfo("vgId:%d, post block after close sync", pVnode->config.vgId);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册