Adapt striping to the requested number of spindles
authorBernardo Dal Seno <bdalseno@google.com>
Fri, 24 May 2013 13:30:19 +0000 (15:30 +0200)
committerBernardo Dal Seno <bdalseno@google.com>
Tue, 28 May 2013 09:46:07 +0000 (11:46 +0200)
Otherwise LVM may use a smaller number of PVs (spindles) to accommodate for
the default stripes.

Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>

lib/storage/bdev.py

index bde3235..454f35c 100644 (file)
@@ -284,9 +284,12 @@ class LogicalVolume(base.BlockDev):
                         " MB: %d available, %d needed",
                         size, current_pvs, req_pvs)
       assert current_pvs == len(pvlist)
-      if stripes > current_pvs:
-        # No warning issued for this, as it's no surprise
-        stripes = current_pvs
+      # We must update stripes to be sure to use all the desired spindles
+      stripes = current_pvs
+      if stripes > desired_stripes:
+        # Don't warn when lowering stripes, as it's no surprise
+        logging.warning("Using %s stripes instead of %s, to be able to use"
+                        " %s spindles", stripes, desired_stripes, current_pvs)
 
     else:
       if stripes < desired_stripes: