MySQL Connector/Python Release Notes
Fixes bugs since the initial 1.0.7 GA release.
When a stored procedure was called with arguments, and produced multiple result sets, the result sets were not returned properly. (Bug #15916486, Bug #67710)
The ping()
method was always reconnecting to
the database, ignoring the reconnect
argument. This means that there would be a
rollback when pinging the
MySQL server during a
transaction.
Now ping()
will honor the
reconnect
option and only reestablish the
connection when needed.
(Bug #15915243, Bug #67650)
Connector/Python could not connect to MySQL servers using IPv6
addresses. An InterfaceError
or
ConnectionRefusedError
was raised:
mysql.connector.errors.InterfaceError: 2003: Can't connect to MySQL server on
'IPv6-style address
' (Address family for hostname not supported)
ConnectionRefusedError: [Errno 111] Connection refused
(Bug #15876886, Bug #15927825)
When connecting to a MySQL server from a host whose IP address
was not allowed, Connector/Python reported a handshake problem
and raised an InterfaceError
exception.
(Bug #15836979)
When a username or password was passed in as Unicode to
Connector/Python, connection attempts failed with
UnicodeDecodeError
exceptions due to string
concatenation of mixed-charset types. This issue affected
programs running under Python 2, and did not affect Python 3.
(Bug #14843456, Bug #67306)
Intermittent errors could occur on Windows systems:
InterfaceError(errno=2013)
. The cause was
incorrect handling of sock.recv()
library
calls that returned less data than was requested.
(Bug #14829471, Bug #67303)
A socket error would produce a NameError
exception instead of the expected
InterfaceError
, due to a misnamed variable:
NameError: global name 'e' is not defined
(Bug #14802017)
The executemany()
function now supports the
pyformat parameter style. In the pyformat style, all the
substitution variables are passed in using a single dictionary
parameter, and the %
format specifier is
encoded like
%(
for a
string. dict_key
)sMySQLCursor.executemany()
can now use
both ANSI C printf and Python extended format codes.
(Bug #14754894, Bug #67146)
The error message was clarified when a non-integer value was used for the TCP/IP port connection argument. (Bug #13808727, Bug #64543)