From: Patrick Donnelly Date: Sun, 20 Sep 2020 21:05:13 +0000 (-0700) Subject: qa: ignore logrotate state rename error X-Git-Tag: v16.1.0~989^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f30a84b6a7a21670d8b5c5a7fe19df70e4371260;p=ceph.git qa: ignore logrotate state rename error This is hopefully a transient issue that can be ignored. Fixes: https://tracker.ceph.com/issues/42433 Signed-off-by: Patrick Donnelly --- diff --git a/qa/tasks/ceph.py b/qa/tasks/ceph.py index c73f25b34ab..2276c5bd2b2 100644 --- a/qa/tasks/ceph.py +++ b/qa/tasks/ceph.py @@ -177,13 +177,12 @@ def ceph_log(ctx, config): while not self.stop_event.is_set(): self.stop_event.wait(timeout=30) try: - run.wait( - ctx.cluster.run( - args=['sudo', 'logrotate', '/etc/logrotate.d/ceph-test.conf' - ], - wait=False, - ) + p = ctx.cluster.run( + args=['sudo', 'logrotate', '/etc/logrotate.d/ceph-test.conf'], + wait=False, + stderr=StringIO() ) + run.wait(p) except exceptions.ConnectionLostError as e: # Some tests may power off nodes during test, in which # case we will see connection errors that we should ignore. @@ -197,6 +196,12 @@ def ceph_log(ctx, config): log.debug("Missed logrotate, EOFError") except SSHException: log.debug("Missed logrotate, SSHException") + except run.CommandFailedError as e: + err = p.stderr.getvalue() + if 'error: error renaming temp state file' in err: + log.info('ignoring transient state error: %s', e) + else: + raise except socket.error as e: if e.errno in (errno.EHOSTUNREACH, errno.ECONNRESET): log.debug("Missed logrotate, host unreachable")