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 thereconnect
argument. This means that there would be a rollback when pinging the MySQL server during a transaction.Now
ping()
will honor thereconnect
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
orConnectionRefusedError
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 ofsock.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 expectedInterfaceError
, 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)