From 1f9222feb2a668c4e918000e5358b98afbde38d7 Mon Sep 17 00:00:00 2001 From: Daniel Black Date: Sat, 27 Jun 2015 14:57:05 +1000 Subject: [PATCH] only set no_delay on TCP sockets otherwise and exception is thrown on when connecting to unix_socket ([Errno 95] Operation not supported). --- pymysql/connections.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pymysql/connections.py b/pymysql/connections.py index 1c720e3..ca8ae2f 100644 --- a/pymysql/connections.py +++ b/pymysql/connections.py @@ -839,10 +839,10 @@ class Connection(object): raise self.host_info = "socket %s:%d" % (self.host, self.port) if DEBUG: print('connected using socket') + if self.no_delay: + sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) sock.settimeout(None) sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) - if self.no_delay: - sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) self.socket = sock self._rfile = _makefile(sock, 'rb') self._get_server_information()