summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-06-15 20:06:33 -0700
committerSage Weil <sage@inktank.com>2013-06-17 15:47:30 -0700
commitc3936ebb159b419115bfdc5dc7a23f5807cff9fa (patch)
tree303f71bd19c9a95b44ca218056a9f8b100743159
parent3cb783c31541cebe928b97cf27eb326bb4b54f9b (diff)
downloadceph-c3936ebb159b419115bfdc5dc7a23f5807cff9fa.tar.gz
ceph-disk: do not stop activate-all on first failure
Keep going even if we hit one activation error. This avoids failing to start some disks when only one of them won't start (e.g., because it doesn't belong to the current cluster). Signed-off-by: Sage Weil <sage@inktank.com> (cherry picked from commit c9074375bfbe1e3757b9c423a5ff60e8013afbce)
-rwxr-xr-xsrc/ceph-disk11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/ceph-disk b/src/ceph-disk
index cd3b6cce3d5..26097c8e089 100755
--- a/src/ceph-disk
+++ b/src/ceph-disk
@@ -1694,6 +1694,7 @@ def main_activate_all(args):
LOG.debug('Scanning %s', dir)
if not os.path.exists(dir):
return
+ err = False
for name in os.listdir(dir):
if name.find('.') < 0:
continue
@@ -1713,11 +1714,17 @@ def main_activate_all(args):
osd_id=osd_id,
)
- except:
- raise
+ except Exception as e:
+ print >> sys.stderr, '{prog}: {msg}'.format(
+ prog=args.prog,
+ msg=e,
+ )
+ err = True
finally:
activate_lock.release()
+ if err:
+ raise Error('One or more partitions failed to activate')
###########################