Utility user setup leaks memory | Valgrind: still reachable: malloc in acl_init_utility_user & init_dynamic_array2
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Percona Server moved to https://jira.percona.com/projects/PS |
Fix Released
|
Medium
|
George Ormond Lorch III | ||
5.1 |
Invalid
|
Undecided
|
Unassigned | ||
5.5 |
Fix Released
|
Medium
|
George Ormond Lorch III | ||
5.6 |
Fix Released
|
Medium
|
George Ormond Lorch III |
Bug Description
To repeat, run mysql-test-run percona_
HEAP SUMMARY:
in use at exit: 30,570,510 bytes in 218 blocks
total heap usage: 44,831 allocs, 44,613 frees, 82,941,230 bytes allocated
25 bytes in 2 blocks are still reachable in loss record 1 of 99
at 0x4C2B3F8: malloc (in /usr/lib/
by 0x90E42B: my_malloc (my_malloc.c:38)
by 0x90E832: my_strndup (my_malloc.c:155)
by 0x58C4BD: acl_init_
by 0x58B286: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:974)
by 0x58BDCC: acl_reload(THD*) (sql_acl.cc:1175)
by 0x72558D: reload_
by 0x60A5FB: mysql_execute_
by 0x60F6DC: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:5867)
by 0x602E75: dispatch_
by 0x602114: do_command(THD*) (sql_parse.cc:789)
by 0x6F884D: do_handle_
by 0x6F8342: handle_
by 0x9C2D5B: pfs_spawn_thread (pfs.cc:1015)
by 0x545AE99: start_thread (pthread_
by 0x619FCBC: clone (clone.S:112)
25 bytes in 2 blocks are indirectly lost in loss record 2 of 99
at 0x4C2B3F8: malloc (in /usr/lib/
by 0x90E42B: my_malloc (my_malloc.c:38)
by 0x90E832: my_strndup (my_malloc.c:155)
by 0x58C4BD: acl_init_
by 0x58B286: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:974)
by 0x58BDCC: acl_reload(THD*) (sql_acl.cc:1175)
by 0x58A05C: acl_init(bool) (sql_acl.cc:651)
by 0x561C22: mysqld_main(int, char**) (mysqld.cc:4677)
by 0x55A0DB: main (main.cc:25)
40 bytes in 1 blocks are still reachable in loss record 29 of 99
at 0x4C2B3F8: malloc (in /usr/lib/
by 0x90E42B: my_malloc (my_malloc.c:38)
by 0x8E3D2C: init_dynamic_array2 (array.c:70)
by 0x58C443: acl_init_
by 0x58B286: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:974)
by 0x58BDCC: acl_reload(THD*) (sql_acl.cc:1175)
by 0x72558D: reload_
by 0x60A5FB: mysql_execute_
by 0x60F6DC: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:5867)
by 0x602E75: dispatch_
by 0x602114: do_command(THD*) (sql_parse.cc:789)
by 0x6F884D: do_handle_
by 0x6F8342: handle_
by 0x9C2D5B: pfs_spawn_thread (pfs.cc:1015)
by 0x545AE99: start_thread (pthread_
by 0x619FCBC: clone (clone.S:112)
49 bytes in 1 blocks are still reachable in loss record 49 of 99
at 0x4C2B3F8: malloc (in /usr/lib/
by 0x90E42B: my_malloc (my_malloc.c:38)
by 0x58C090: acl_init_
by 0x58B286: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:974)
by 0x58BDCC: acl_reload(THD*) (sql_acl.cc:1175)
by 0x72558D: reload_
by 0x60A5FB: mysql_execute_
by 0x60F6DC: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:5867)
by 0x602E75: dispatch_
by 0x602114: do_command(THD*) (sql_parse.cc:789)
by 0x6F884D: do_handle_
by 0x6F8342: handle_
by 0x9C2D5B: pfs_spawn_thread (pfs.cc:1015)
by 0x545AE99: start_thread (pthread_
by 0x619FCBC: clone (clone.S:112)
49 bytes in 1 blocks are definitely lost in loss record 50 of 99
at 0x4C2B3F8: malloc (in /usr/lib/
by 0x90E42B: my_malloc (my_malloc.c:38)
by 0x58C090: acl_init_
by 0x58B286: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:974)
by 0x58BDCC: acl_reload(THD*) (sql_acl.cc:1175)
by 0x58A05C: acl_init(bool) (sql_acl.cc:651)
by 0x561C22: mysqld_main(int, char**) (mysqld.cc:4677)
by 0x55A0DB: main (main.cc:25)
61 bytes in 1 blocks are still reachable in loss record 51 of 99
at 0x4C2B3F8: malloc (in /usr/lib/
by 0x90E42B: my_malloc (my_malloc.c:38)
by 0x58C0A3: acl_init_
by 0x58B286: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:974)
by 0x58BDCC: acl_reload(THD*) (sql_acl.cc:1175)
by 0x72558D: reload_
by 0x60A5FB: mysql_execute_
by 0x60F6DC: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:5867)
by 0x602E75: dispatch_
by 0x602114: do_command(THD*) (sql_parse.cc:789)
by 0x6F884D: do_handle_
by 0x6F8342: handle_
by 0x9C2D5B: pfs_spawn_thread (pfs.cc:1015)
by 0x545AE99: start_thread (pthread_
by 0x619FCBC: clone (clone.S:112)
61 bytes in 1 blocks are definitely lost in loss record 52 of 99
at 0x4C2B3F8: malloc (in /usr/lib/
by 0x90E42B: my_malloc (my_malloc.c:38)
by 0x58C0A3: acl_init_
by 0x58B286: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:974)
by 0x58BDCC: acl_reload(THD*) (sql_acl.cc:1175)
by 0x58A05C: acl_init(bool) (sql_acl.cc:651)
by 0x561C22: mysqld_main(int, char**) (mysqld.cc:4677)
by 0x55A0DB: main (main.cc:25)
65 (40 direct, 25 indirect) bytes in 1 blocks are definitely lost in loss record 59 of 99
at 0x4C2B3F8: malloc (in /usr/lib/
by 0x90E42B: my_malloc (my_malloc.c:38)
by 0x8E3D2C: init_dynamic_array2 (array.c:70)
by 0x58C443: acl_init_
by 0x58B286: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:974)
by 0x58BDCC: acl_reload(THD*) (sql_acl.cc:1175)
by 0x58A05C: acl_init(bool) (sql_acl.cc:651)
by 0x561C22: mysqld_main(int, char**) (mysqld.cc:4677)
by 0x55A0DB: main (main.cc:25)
Also seen at e.g.
http://
Related branches
- Laurynas Biveinis (community): Approve
-
Diff: 92 lines (+37/-7)1 file modifiedPercona-Server/sql/sql_acl.cc (+37/-7)
- Laurynas Biveinis (community): Approve
-
Diff: 133 lines (+46/-15)1 file modifiedPercona-Server/sql/sql_acl.cc (+46/-15)
Seen in 5.6-QA also (malloc in acl_init_ utility_ user, init_dynamic_ array2)
24 bytes in 1 blocks are still reachable in loss record 4 of 524 malloc. c:270) utility_ user(char) (sql_acl.cc:1788) libc-2. 12.so)
at 0x4A069EE: malloc (vg_replace_
by 0x997CA5: my_malloc (my_malloc.c:38)
by 0x997E84: my_strndup (my_malloc.c:164)
by 0x715803: acl_init_
by 0x71602B: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:1297)
by 0x716C4A: acl_reload(THD*) (sql_acl.cc:1624)
by 0x71B305: acl_init(bool) (sql_acl.cc:1012)
by 0x6348AE: mysqld_main(int, char**) (mysqld.cc:5573)
by 0x3636E1ECDC: (below main) (in /lib64/
40 bytes in 1 blocks are still reachable in loss record 183 of 524 malloc. c:270) utility_ user(char) (sql_acl.cc:1778) libc-2. 12.so)
at 0x4A069EE: malloc (vg_replace_
by 0x997CA5: my_malloc (my_malloc.c:38)
by 0x97EEB4: init_dynamic_array2 (array.c:70)
by 0x7157BA: acl_init_
by 0x71602B: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:1297)
by 0x716C4A: acl_reload(THD*) (sql_acl.cc:1624)
by 0x71B305: acl_init(bool) (sql_acl.cc:1012)
by 0x6348AE: mysqld_main(int, char**) (mysqld.cc:5573)
by 0x3636E1ECDC: (below main) (in /lib64/
49 bytes in 1 blocks are still reachable in loss record 236 of 524 malloc. c:270) utility_ user(char) (sql_acl.cc:1664) libc-2. 12.so)
at 0x4A069EE: malloc (vg_replace_
by 0x997CA5: my_malloc (my_malloc.c:38)
by 0x7154A7: acl_init_
by 0x71602B: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:1297)
by 0x716C4A: acl_reload(THD*) (sql_acl.cc:1624)
by 0x71B305: acl_init(bool) (sql_acl.cc:1012)
by 0x6348AE: mysqld_main(int, char**) (mysqld.cc:5573)
by 0x3636E1ECDC: (below main) (in /lib64/
61 bytes in 1 blocks are still reachable in loss record 237 of 524 malloc. c:270) utility_ user(char) (sql_acl.cc:1665) libc-2. 12.so)
at 0x4A069EE: malloc (vg_replace_
by 0x997CA5: my_malloc (my_malloc.c:38)
by 0x7154BA: acl_init_
by 0x71602B: acl_load(THD*, TABLE_LIST*) (sql_acl.cc:1297)
by 0x716C4A: acl_reload(THD*) (sql_acl.cc:1624)
by 0x71B305: acl_init(bool) (sql_acl.cc:1012)
by 0x6348AE: mysqld_main(int, char**) (mysqld.cc:5573)
by 0x3636E1ECDC: (below main) (in /lib64/
320 bytes in 1 blocks are still reachable in loss record 379 of 524 malloc. c:270) constraint_ init(char) (my_getopt.cc:134) constraint_ find(char const*, unsigned long, char) (my_getopt.cc:152) constraint_ get_min_ value (my_getopt.cc:188) variables( ) (mysqld.cc:3841) libc-2. 12.so)
at 0x4A069EE: malloc (vg_replace_
by 0x997CA5: my_malloc (my_malloc.c:38)
by 0x97EEB4: init_dynamic_array2 (array.c:70)
by 0x9822BF: _my_hash_init (hash.c:92)
by 0x9A8D9A: getopt_
by 0x9A8DDF: getopt_
by 0x9A8F84: getopt_
by 0x9A90EC: setval(my_option const*, void const*, char*, int) (my_getopt.cc:986)
by 0x9A9E37: my_handle_options (my_getopt.cc:808)
by 0x62F811: get_options(int*, char***) (mysqld.cc:8933)
by 0x633177: init_common_
by 0x634635: mysqld_main(int, char**) (mysqld.cc:5383)
by 0x3636E1ECDC: (below main) (in /lib64/