Clear persistent pool DCBs when server freed.

This commit is contained in:
counterpoint
2015-06-09 08:26:14 +01:00
parent e395ab1442
commit 99e9987f9b
3 changed files with 8 additions and 6 deletions

View File

@ -131,6 +131,8 @@ SERVER *ptr;
free(server->unique_name);
if (server->server_string)
free(server->server_string);
if (server->persistent)
dcb_persistent_clean_count(server->persistent, true);
free(server);
return 1;
}
@ -146,7 +148,7 @@ server_get_persistent(SERVER *server, char *user, const char *protocol)
{
DCB *dcb, *previous = NULL;
if (server->persistent && dcb_persistent_clean_count(server->persistent) && server->persistent)
if (server->persistent && dcb_persistent_clean_count(server->persistent, false) && server->persistent)
{
spinlock_acquire(&server->persistlock);
dcb = server->persistent;