Skip to content

Commit b78e8e2

Browse files
authored
Merge pull request #5037 from sysown/v3.0_qp_mem_leak_fix
Fix memory leak in Query Processor and ProxySQL_Admin::flush_pgsql_variables___database_to_runtime
2 parents 71e4fc6 + d3fec0c commit b78e8e2

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

lib/Admin_FlushVariables.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -737,9 +737,7 @@ void ProxySQL_Admin::flush_pgsql_variables___database_to_runtime(SQLite3DB* db,
737737
return;
738738
}
739739
else {
740-
GloPTH->wrlock();
741-
const char* previous_default_client_encoding = GloPTH->get_variable_string((char*)"default_client_encoding");
742-
assert(previous_default_client_encoding);
740+
GloPTH->wrlock();
743741
for (std::vector<SQLite3_row*>::iterator it = resultset->rows.begin(); it != resultset->rows.end(); ++it) {
744742
SQLite3_row* r = *it;
745743
const char* value = r->fields[1];

lib/Query_Processor.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,10 @@ static void __delete_query_rule(QP_rule_t *qr) {
129129
free(qr->username);
130130
if (qr->schemaname)
131131
free(qr->schemaname);
132+
if (qr->client_addr)
133+
free(qr->client_addr);
134+
if (qr->proxy_addr)
135+
free(qr->proxy_addr);
132136
if (qr->match_digest)
133137
free(qr->match_digest);
134138
if (qr->match_pattern)

0 commit comments

Comments
 (0)