Functionality added or changed:
Allow interception of
LOAD DATA INFILE
andSHOW ERRORS
statements.The unused
network_mysqld_com_query_result_track_state()
function has been deprecated.chassis_set_fdlimit()
has been deprecated in favor ofchassis_fdlimit_set()
.Shutdown hooks were added to free the global memory of third-party libraries such as
openssl
.con->in_load_data_local
has been removed.
Bugs fixed:
The admin plugin had an undocumented default value for
--admin-password
. (Bug#53429)Use of
LOAD DATA LOCAL INFILE
caused the connection between the client and MySQL Proxy to abort. (Bug#51864)If the backend MySQL server went down, and then the clock on the MySQL Proxy host went backward (for example, during daylight saving time adjustments), Proxy stopped forwarding queries to the backend. (Bug#50806)
network_address_set_address()->network_address_set_address_ip()
calledgethostbyname()
which was not reentrant. This meant that a MySQL Proxy plugin needed to guard all calls tonetwork_address_set_address()
with a mutex.network_address_set_address()
has been modified to be thread safe. (Bug#49099)The hard limit was fixed for the case where the fdlimit was set. (Bug#48120)
MySQL Proxy returned an error message with a nonstandard SQL State when all backends were down:
"#07000(proxy) all backends are down"
This caused issues for clients with “retry” logic, as they could not handle these “custom” SQL States. (Bug#45417)
If MySQL Proxy used a UNIX socket, it did not remove the socket file at termination time. (Bug#38415)
When running configure to build, the error message relating to the
lua
libraries could be misleading. The wording and build advice have been updated.