From c8d615e9d980de02f0360c00ce86391397f04eb7 Mon Sep 17 00:00:00 2001 From: Bryon Roche Date: Tue, 21 Jul 2015 11:37:41 -0700 Subject: [PATCH 1/2] Have bernhard attempt to set SO_REUSEADDR. On an app with heavy TCP traffic, this will minimize the use of extra TCP IP/port pairs. --- bernhard/__init__.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bernhard/__init__.py b/bernhard/__init__.py index f3d238b..6d13023 100644 --- a/bernhard/__init__.py +++ b/bernhard/__init__.py @@ -34,6 +34,10 @@ def __init__(self, host, port): log.exception("Exception creating TCP socket: %s", e) self.sock = None continue + try: + self.sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + except (socket.error, AttributeError) as e: + log.exception("Could set set REUSEADDR on tcp client socket: %s", e) try: self.sock.connect(sa) except socket.error as e: From 911db4ffed7d7a52b3269aff9215608138a20533 Mon Sep 17 00:00:00 2001 From: Bryon Roche Date: Tue, 21 Jul 2015 11:53:49 -0700 Subject: [PATCH 2/2] Fix my typo in setsockopt error message --- bernhard/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bernhard/__init__.py b/bernhard/__init__.py index 6d13023..03c15c0 100644 --- a/bernhard/__init__.py +++ b/bernhard/__init__.py @@ -37,7 +37,7 @@ def __init__(self, host, port): try: self.sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) except (socket.error, AttributeError) as e: - log.exception("Could set set REUSEADDR on tcp client socket: %s", e) + log.exception("Could not set REUSEADDR on tcp client socket: %s", e) try: self.sock.connect(sa) except socket.error as e: