]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
qa/tasks/ceph_manager: tolerate tell osd.* error
authorSage Weil <sage@redhat.com>
Wed, 6 Dec 2017 23:51:20 +0000 (17:51 -0600)
committerSage Weil <sage@redhat.com>
Wed, 6 Dec 2017 23:51:20 +0000 (17:51 -0600)
It's possible for tell osd.* to race against an osd we stopped but the
cluster doesn't know is down yet.  In tha case we'll get ENXIO on that
osd and the command will fail.

In this context, we don't care.

Signed-off-by: Sage Weil <sage@redhat.com>
qa/tasks/ceph_manager.py

index c9969081400c67e54ae6f3a19d4c6e71874c3cbf..42e9442f5921467aed12f1a06dcaa3ef42c88526 100644 (file)
@@ -888,9 +888,12 @@ class Thrasher:
                 osd_state = "false"
             else:
                 osd_state = "true"
-            self.ceph_manager.inject_args('osd', '*',
-                                          'osd_enable_op_tracker',
-                                          osd_state)
+            try:
+                self.ceph_manager.inject_args('osd', '*',
+                                              'osd_enable_op_tracker',
+                                              osd_state)
+            except CommandFailedError:
+                self.log('Failed to tell all osds, ignoring')
             gevent.sleep(delay)
 
     @log_exc