Bug #50993 mem-leak if MySQL pre-4.1 client connects to MySQL Proxy
| Submitted: | 8 Feb 2010 13:26 | Modified: | 20 Apr 2010 16:05 |
|---|---|---|---|
| Reporter: | Jan Kneschke | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Proxy: Core | Severity: | S3 (Non-critical) |
| Version: | 0.7.x, 0.8.0 | OS: | Any |
| Assigned to: | CPU Architecture: | Any |
[9 Feb 2010 8:40]
Sveta Smirnova
Thank you for the report. I can not repeat described behavior using valgrind-3.5.0. Which additional circumstances should I use?
[10 Mar 2010 0:00]
Bugs System
No feedback was provided for this bug for over a month, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open".
[30 Mar 2010 16:18]
Enterprise Tools JIRA Robot
Kay Roepke writes: fixed on launchpad (also released in 0.8): Revision ID: jan@mysql.com-20100208112310-xuhr3423clpc3ntp fixed mem-leak on 4.0 clients connect
[20 Apr 2010 16:05]
MC Brown
A note has been added to the 0.8.0 changelog:
A memory leak could occur in MySQL Proxy if MySQL v4.0 or
earlier clients connected to the proxy.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.052 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.
Description: The mysql-4.0 test in tests/suite/base/t/ shows a mem-leak in: ==17386== 76 (24 direct, 52 indirect) bytes in 1 blocks are definitely lost in loss record 39 of 53 ==17386== at 0x4023F5B: calloc (vg_replace_malloc.c:418) ==17386== by 0x409E26B: g_malloc0 (gmem.c:151) ==17386== by 0x4123735: network_mysqld_auth_response_new (network-mysqld-packet.c:1154) ==17386== by 0x4766149: proxy_read_auth (proxy-plugin.c:632) ==17386== by 0x411B15E: plugin_call (network-mysqld.c:699) ==17386== by 0x411C715: network_mysqld_con_handle (network-mysqld.c:1056) ... How to repeat: Use a mysql client from MySQL 4.0 and connect to the MySQL Proxy while it runs under valgrind. Suggested fix: === modified file 'plugins/proxy/proxy-plugin.c' --- plugins/proxy/proxy-plugin.c revid:jan@mysql.com-20100208112255-03hpy4hbwcqe3e1b +++ plugins/proxy/proxy-plugin.c revid:jan@mysql.com-20100208112310-n5dkhuyid0f5z7ll @@ -640,6 +640,7 @@ if (!(auth->capabilities & CLIENT_PROTOCOL_41)) { /* should use packet-id 0 */ network_mysqld_queue_append(con->client, con->client->send_queue, C("\xff\xd7\x07" "4.0 protocol is not supported")); + network_mysqld_auth_response_free(auth); return NETWORK_SOCKET_ERROR; }