diff options
author | Sergei Golubchik <serg@mariadb.org> | 2018-09-28 23:10:37 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2018-09-28 23:10:37 +0200 |
commit | b154d302fa6b0db1515e47604b5ab953ee242181 (patch) | |
tree | 8c0032e9999dc038a188cbab52bfb22ff7383e4d /storage | |
parent | 556f058ab27721658bdeb86f6d8f2dd30d873b64 (diff) | |
download | mariadb-git-b154d302fa6b0db1515e47604b5ab953ee242181.tar.gz |
memory leak when updating @@rocksdb_update_cf_options
Diffstat (limited to 'storage')
-rw-r--r-- | storage/rocksdb/ha_rocksdb.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/storage/rocksdb/ha_rocksdb.cc b/storage/rocksdb/ha_rocksdb.cc index 80ad5ef932d..af82e194d7b 100644 --- a/storage/rocksdb/ha_rocksdb.cc +++ b/storage/rocksdb/ha_rocksdb.cc @@ -5438,6 +5438,9 @@ static int rocksdb_done_func(void *const p) { //rocksdb_tbl_options = nullptr; rocksdb_stats = nullptr; + my_free(rocksdb_update_cf_options); + rocksdb_update_cf_options = nullptr; + my_error_unregister(HA_ERR_ROCKSDB_FIRST, HA_ERR_ROCKSDB_LAST); /* @@ -14002,6 +14005,8 @@ rocksdb_set_update_cf_options(THD *const /* unused */, RDB_MUTEX_LOCK_CHECK(rdb_sysvars_mutex); + my_free(*reinterpret_cast<char **>(var_ptr)); + if (!val) { *reinterpret_cast<char **>(var_ptr) = nullptr; RDB_MUTEX_UNLOCK_CHECK(rdb_sysvars_mutex); |