Revision 9205a895
b/lib/backend.py | ||
---|---|---|
1326 | 1326 |
""" |
1327 | 1327 |
parent_bdev = _RecursiveFindBD(parent_cdev) |
1328 | 1328 |
if parent_bdev is None: |
1329 |
msg = "Can't find parent device %s" % str(parent_cdev)
|
|
1329 |
msg = "Can't find parent device '%s' in add children" % str(parent_cdev)
|
|
1330 | 1330 |
logging.error("BlockdevAddchildren: %s", msg) |
1331 | 1331 |
return (False, msg) |
1332 | 1332 |
new_bdevs = [_RecursiveFindBD(disk) for disk in new_cdevs] |
... | ... | |
1351 | 1351 |
""" |
1352 | 1352 |
parent_bdev = _RecursiveFindBD(parent_cdev) |
1353 | 1353 |
if parent_bdev is None: |
1354 |
logging.error("Can't find parent in remove children: %s", parent_cdev) |
|
1355 |
return False |
|
1354 |
msg = "Can't find parent device '%s' in remove children" % str(parent_cdev) |
|
1355 |
logging.error(msg) |
|
1356 |
return (False, msg) |
|
1356 | 1357 |
devs = [] |
1357 | 1358 |
for disk in new_cdevs: |
1358 | 1359 |
rpath = disk.StaticDevPath() |
1359 | 1360 |
if rpath is None: |
1360 | 1361 |
bd = _RecursiveFindBD(disk) |
1361 | 1362 |
if bd is None: |
1362 |
logging.error("Can't find dynamic device %s while removing children",
|
|
1363 |
disk)
|
|
1364 |
return False
|
|
1363 |
msg = "Can't find device %s while removing children" % (disk,)
|
|
1364 |
logging.error(msg)
|
|
1365 |
return (False, msg)
|
|
1365 | 1366 |
else: |
1366 | 1367 |
devs.append(bd.dev_path) |
1367 | 1368 |
else: |
1368 | 1369 |
devs.append(rpath) |
1369 | 1370 |
parent_bdev.RemoveChildren(devs) |
1370 |
return True
|
|
1371 |
return (True, None)
|
|
1371 | 1372 |
|
1372 | 1373 |
|
1373 | 1374 |
def BlockdevGetmirrorstatus(disks): |
b/lib/cmdlib.py | ||
---|---|---|
5224 | 5224 |
for dev, old_lvs, new_lvs in iv_names.itervalues(): |
5225 | 5225 |
info("detaching %s drbd from local storage" % dev.iv_name) |
5226 | 5226 |
result = self.rpc.call_blockdev_removechildren(tgt_node, dev, old_lvs) |
5227 |
result.Raise()
|
|
5228 |
if not result.data:
|
|
5227 |
msg = result.RemoteFailMsg()
|
|
5228 |
if msg:
|
|
5229 | 5229 |
raise errors.OpExecError("Can't detach drbd from local storage on node" |
5230 |
" %s for device %s" % (tgt_node, dev.iv_name)) |
|
5230 |
" %s for device %s: %s" % |
|
5231 |
(tgt_node, dev.iv_name, msg)) |
|
5231 | 5232 |
#dev.children = [] |
5232 | 5233 |
#cfg.Update(instance) |
5233 | 5234 |
|
Also available in: Unified diff