Heap allocator/deallocator mismatch in scalability metrics plugin
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Percona Server moved to https://jira.percona.com/projects/PS | Status tracked in 5.7 | |||||
5.5 |
Invalid
|
Undecided
|
Unassigned | |||
5.6 |
Fix Released
|
High
|
Laurynas Biveinis | |||
5.7 |
Fix Released
|
High
|
Laurynas Biveinis |
Bug Description
In 5.6:
static
sm_thd_data_t *sm_thd_
{
...
thd_data= calloc(
...
thd_
...
}
list_push will eventually do
LIST *list_cons(void *data, LIST *list)
{
LIST *new_charset=
...
where new_charset will be stored as thd_data->backref.
But then we also have
static
void sm_thd_
{
...
thd_list_root= list_delete(
...
free(
free(thd_data);
}
i.e. my_malloc paired with regular frees.
and we also have
list_
calls, resulting in regular calloc paired with my_free.
tags: | added: scalability-metrics |
https:/ /github. com/percona/ percona- server/ pull/509, https:/ /github. com/percona/ percona- server/ pull/510