From 3efa9051e5fab3e286fdc293986026fb3cc08b2c Mon Sep 17 00:00:00 2001 From: Iustin Pop Date: Tue, 9 Jun 2009 11:10:37 +0200 Subject: [PATCH] Convert blockdev_getmirrorstatus rpc to new style Signed-off-by: Iustin Pop Reviewed-by: Guido Trotter --- lib/backend.py | 4 ++-- lib/cmdlib.py | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/backend.py b/lib/backend.py index d4a991d..ab074da 100644 --- a/lib/backend.py +++ b/lib/backend.py @@ -1374,9 +1374,9 @@ def BlockdevGetmirrorstatus(disks): for dsk in disks: rbd = _RecursiveFindBD(dsk) if rbd is None: - raise errors.BlockDeviceError("Can't find device %s" % str(dsk)) + _Fail("Can't find device %s", dsk) stats.append(rbd.CombinedSyncStatus()) - return stats + return True, stats def _RecursiveFindBD(disk): diff --git a/lib/cmdlib.py b/lib/cmdlib.py index 5dd52b0..d23df1b 100644 --- a/lib/cmdlib.py +++ b/lib/cmdlib.py @@ -1688,15 +1688,16 @@ def _WaitForSync(lu, instance, oneshot=False, unlock=False): done = True cumul_degraded = False rstats = lu.rpc.call_blockdev_getmirrorstatus(node, instance.disks) - if rstats.failed or not rstats.data: - lu.LogWarning("Can't get any data from node %s", node) + msg = rstats.RemoteFailMsg() + if msg: + lu.LogWarning("Can't get any data from node %s: %s", node, msg) retries += 1 if retries >= 10: raise errors.RemoteError("Can't contact node %s for mirror data," " aborting." % node) time.sleep(6) continue - rstats = rstats.data + rstats = rstats.payload retries = 0 for i, mstat in enumerate(rstats): if mstat is None: -- 1.7.10.4