提交 b36f1bb9 编写于 作者: X Xu Han 提交者: GitHub

Merge pull request #994 from vivianQizhu/drive_mirror

block_copy: is_paused, check busy or not before count offset.
...@@ -141,13 +141,22 @@ class BlockCopy(object): ...@@ -141,13 +141,22 @@ class BlockCopy(object):
""" """
Return block job paused status. Return block job paused status.
""" """
paused = self.get_status().get("paused") paused, offset_p = self.paused_status()
offset_p = self.get_status().get("offset") if paused:
time.sleep(random.uniform(1, 3)) time.sleep(random.uniform(1, 3))
offset_l = self.get_status().get("offset") paused_l, offset_l = self.paused_status()
paused &= offset_p == offset_l paused &= offset_p == offset_l and paused_l
return paused return paused
def paused_status(self):
"""
Get key value for pause status.
"""
status = self.get_status()
paused = status.get("paused") and not status.get("busy")
offset = status.get("offset")
return paused, offset
def pause_job(self): def pause_job(self):
""" """
pause active job; pause active job;
...@@ -156,7 +165,7 @@ class BlockCopy(object): ...@@ -156,7 +165,7 @@ class BlockCopy(object):
raise error.TestError("Job has been already paused.") raise error.TestError("Job has been already paused.")
logging.info("Pause block job.") logging.info("Pause block job.")
self.vm.pause_block_job(self.device) self.vm.pause_block_job(self.device)
time.sleep(random.uniform(1, 3)) time.sleep(5)
if not self.is_paused(): if not self.is_paused():
raise error.TestFail("Pause block job failed.") raise error.TestFail("Pause block job failed.")
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册