Skip to content

Commit c19e72b

Browse files
committed
Replace the deprecated socket.error by OSError
Following PEP 3151 (Reworking the OS and IO exception hierarchy), the socket.error class was made an alias of OSError. This patch replaces the deprecated socket.error by OSError. Change-Id: I3879e5b79da89c51f46c4721a96d86a3090063c5
1 parent c29c3a0 commit c19e72b

File tree

6 files changed

+21
-37
lines changed

6 files changed

+21
-37
lines changed

lib/mysql/connector/network.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,15 +130,15 @@ def shutdown(self):
130130
self.sock.shutdown(socket.SHUT_RDWR)
131131
self.sock.close()
132132
del self._packet_queue
133-
except (socket.error, AttributeError):
133+
except (AttributeError, OSError):
134134
pass
135135

136136
def close_connection(self):
137137
"""Close the socket"""
138138
try:
139139
self.sock.close()
140140
del self._packet_queue
141-
except (socket.error, AttributeError):
141+
except (AttributeError, OSError):
142142
pass
143143

144144
def __del__(self):

lib/mysqlx/connection.py

Lines changed: 11 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ def sendall(self, data):
295295
raise OperationalError("MySQLx Connection not available")
296296
try:
297297
self._socket.sendall(data)
298-
except socket.error as err:
298+
except OSError as err:
299299
raise OperationalError(f"Unexpected socket error: {err}") from err
300300

301301
def close(self):
@@ -305,7 +305,7 @@ def close(self):
305305
try:
306306
self._socket.shutdown(socket.SHUT_RDWR)
307307
self._socket.close()
308-
except socket.error:
308+
except OSError:
309309
# On [Errno 107] Transport endpoint is not connected
310310
pass
311311
self._socket = None
@@ -475,10 +475,10 @@ def is_open(self):
475475

476476

477477
def catch_network_exception(func):
478-
"""Decorator used to catch socket.error or RuntimeError.
478+
"""Decorator used to catch OSError or RuntimeError.
479479
480480
Raises:
481-
:class:`mysqlx.InterfaceError`: If `socket.Error` or `RuntimeError`
481+
:class:`mysqlx.InterfaceError`: If `OSError` or `RuntimeError`
482482
is raised.
483483
"""
484484

@@ -808,7 +808,7 @@ def connect(self):
808808
self._authenticate()
809809
self.protocol.set_compression(algorithm)
810810
return
811-
except (socket.error, RuntimeError) as err:
811+
except (OSError, RuntimeError) as err:
812812
error = err
813813
router.set_unavailable()
814814

@@ -1558,7 +1558,7 @@ def remove_connections(self):
15581558
else:
15591559
try:
15601560
cnx.close_connection()
1561-
except (RuntimeError, socket.error, InterfaceError):
1561+
except (RuntimeError, OSError, InterfaceError):
15621562
pass
15631563
finally:
15641564
self.remove_connection(cnx)
@@ -1927,15 +1927,11 @@ def set_mysqlx_wait_timeout(cnx):
19271927
if not cnx.keep_open:
19281928
cnx.reset()
19291929
set_mysqlx_wait_timeout(cnx)
1930-
except (RuntimeError, socket.error, InterfaceError):
1930+
except (RuntimeError, OSError, InterfaceError):
19311931
# Unable to reset connection, close and remove
19321932
try:
19331933
cnx.close_connection()
1934-
except (
1935-
RuntimeError,
1936-
socket.error,
1937-
InterfaceError,
1938-
):
1934+
except (RuntimeError, OSError, InterfaceError):
19391935
pass
19401936
finally:
19411937
pool.remove_connection(cnx)
@@ -1951,11 +1947,7 @@ def set_mysqlx_wait_timeout(cnx):
19511947
else:
19521948
try:
19531949
cnx.close_connection()
1954-
except (
1955-
RuntimeError,
1956-
socket.error,
1957-
InterfaceError,
1958-
):
1950+
except (RuntimeError, OSError, InterfaceError):
19591951
pass
19601952
finally:
19611953
pool.remove_connection(cnx)
@@ -1965,11 +1957,7 @@ def set_mysqlx_wait_timeout(cnx):
19651957
pool.track_connection(cnx)
19661958
cnx.connect()
19671959
set_mysqlx_wait_timeout(cnx)
1968-
except (
1969-
RuntimeError,
1970-
socket.error,
1971-
InterfaceError,
1972-
):
1960+
except (RuntimeError, OSError, InterfaceError):
19731961
pass
19741962
finally:
19751963
# Server must be down, take down idle
@@ -1982,11 +1970,7 @@ def set_mysqlx_wait_timeout(cnx):
19821970
)
19831971
cnx.close_connection()
19841972
pool.remove_connection(cnx)
1985-
except (
1986-
RuntimeError,
1987-
socket.error,
1988-
InterfaceError,
1989-
):
1973+
except (RuntimeError, OSError, InterfaceError):
19901974
pass
19911975
return cnx
19921976
elif pool.open_connections < pool.pool_max_size:

tests/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -155,14 +155,14 @@ def raise_socket_error(self, err=errno.EPERM):
155155

156156
def recv(self, bufsize=4096, flags=0):
157157
if self._raise_socket_error:
158-
raise socket.error(self._raise_socket_error)
158+
raise OSError(self._raise_socket_error)
159159
res = self._server_replies[0:bufsize]
160160
self._server_replies = self._server_replies[bufsize:]
161161
return res
162162

163163
def recv_into(self, buffer_, nbytes=0, flags=0):
164164
if self._raise_socket_error:
165-
raise socket.error(self._raise_socket_error)
165+
raise OSError(self._raise_socket_error)
166166
if nbytes == 0:
167167
nbytes = len(buffer_)
168168
try:
@@ -176,7 +176,7 @@ def recv_into(self, buffer_, nbytes=0, flags=0):
176176

177177
def send(self, string, flags=0):
178178
if self._raise_socket_error:
179-
raise socket.error(self._raise_socket_error)
179+
raise OSError(self._raise_socket_error)
180180
self._client_sends.append(bytearray(string))
181181
return len(string)
182182

tests/mysqld.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -852,7 +852,7 @@ def read_packet(self):
852852

853853
def handle(self):
854854
if self.server.sock_error:
855-
raise socket.error(self.server.socket_error)
855+
raise OSError(self.server.socket_error)
856856

857857
res = self._server_replies[0:bufsize]
858858
self._server_replies = self._server_replies[bufsize:]

tests/test_connection.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1916,7 +1916,7 @@ def test_shutdown(self):
19161916
self.assertEqual(aborted_clients, cur.fetchone()[1])
19171917

19181918
test_shutdown_cnx.shutdown()
1919-
self.assertRaises(socket.error, test_shutdown_cnx._socket.sock.getsockname)
1919+
self.assertRaises(OSError, test_shutdown_cnx._socket.sock.getsockname)
19201920
cur.execute(sql)
19211921
self.assertEqual(str(int(aborted_clients) + 1), cur.fetchone()[1])
19221922

tests/test_network.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -420,12 +420,12 @@ def _test_open_connection(self, addr, family, should_raise, force):
420420
sock = network.MySQLTCPSocket(host=addr, port=self._port, force_ipv6=force)
421421
sock.set_connection_timeout(1)
422422
sock.open_connection()
423-
except (errors.InterfaceError, socket.error):
423+
except (errors.InterfaceError, OSError):
424424
if not should_raise:
425-
self.fail("{0} incorrectly raised socket.error".format(addr))
425+
self.fail("{0} incorrectly raised OSError".format(addr))
426426
else:
427427
if should_raise:
428-
self.fail("{0} should have raised socket.error".format(addr))
428+
self.fail("{0} should have raised OSError".format(addr))
429429
else:
430430
self.assertEqual(
431431
family,

0 commit comments

Comments
 (0)