Revision 6ef8077e lib/cmdlib/cluster.py

b/lib/cmdlib/cluster.py
533 533
      newl = [v[2].Copy() for v in dskl]
534 534
      for dsk in newl:
535 535
        self.cfg.SetDiskID(dsk, node)
536
      result = self.rpc.call_blockdev_getsize(node, newl)
536
      result = self.rpc.call_blockdev_getdimensions(node, newl)
537 537
      if result.fail_msg:
538
        self.LogWarning("Failure in blockdev_getsize call to node"
538
        self.LogWarning("Failure in blockdev_getdimensions call to node"
539 539
                        " %s, ignoring", node)
540 540
        continue
541 541
      if len(result.payload) != len(dskl):
......
544 544
        self.LogWarning("Invalid result from node %s, ignoring node results",
545 545
                        node)
546 546
        continue
547
      for ((instance, idx, disk), size) in zip(dskl, result.payload):
548
        if size is None:
547
      for ((instance, idx, disk), dimensions) in zip(dskl, result.payload):
548
        if dimensions is None:
549 549
          self.LogWarning("Disk %d of instance %s did not return size"
550 550
                          " information, ignoring", idx, instance.name)
551 551
          continue
552
        if not isinstance(dimensions, (tuple, list)):
553
          self.LogWarning("Disk %d of instance %s did not return valid"
554
                          " dimension information, ignoring", idx,
555
                          instance.name)
556
          continue
557
        (size, _) = dimensions
552 558
        if not isinstance(size, (int, long)):
553 559
          self.LogWarning("Disk %d of instance %s did not return valid"
554 560
                          " size information, ignoring", idx, instance.name)

Also available in: Unified diff