]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
kernel: debug weird socket exceptions
authorJosh Durgin <josh.durgin@dreamhost.com>
Fri, 5 Aug 2011 18:08:02 +0000 (11:08 -0700)
committerJosh Durgin <josh.durgin@dreamhost.com>
Fri, 5 Aug 2011 18:08:02 +0000 (11:08 -0700)
teuthology/task/kernel.py

index 6f0da9d03ea0c41ad96a7e5f70f83615eb1cd69d..12c29b2f69e578d5f9275c70f92d05a408045759 100644 (file)
@@ -139,10 +139,15 @@ def reconnect(ctx, timeout):
                     user_at_host=remote.name,
                     host_key=ctx.config['targets'][remote.name],
                     )
-            except socket.error as (code, description):
-                if code not in [errno.ECONNREFUSED, errno.ETIMEDOUT,
+            except socket.error as e:
+                if hasattr(e, '__getitem__'):
+                    if e[0] not in [errno.ECONNREFUSED, errno.ETIMEDOUT,
                                 errno.EHOSTUNREACH, errno.EHOSTDOWN] or \
                                 time.time() - starttime > timeout:
+                        log.exception('unknown socket error: %s', repr(e))
+                        raise
+                else:
+                    log.exception('weird socket error without error code')
                     raise
             else:
                 need_reconnect.remove(remote)