Fix crash on debug logging

The debug logging for persistent connections caused a crash if a
non-backend DCB was processed.
This commit is contained in:
Markus Makela
2016-11-27 10:02:47 +02:00
parent 7cbbc6f8f7
commit 1b09faf2e4

View File

@ -1730,7 +1730,7 @@ dcb_maybe_add_persistent(DCB *dcb)
atomic_add(&dcb->server->stats.n_current, -1); atomic_add(&dcb->server->stats.n_current, -1);
return true; return true;
} }
else else if (dcb->dcb_role == DCB_ROLE_BACKEND_HANDLER && dcb->server)
{ {
MXS_DEBUG("%lu [dcb_maybe_add_persistent] Not adding DCB %p to persistent pool, " MXS_DEBUG("%lu [dcb_maybe_add_persistent] Not adding DCB %p to persistent pool, "
"user %s, max for pool %ld, error handle called %s, hung flag %s, " "user %s, max for pool %ld, error handle called %s, hung flag %s, "
@ -1738,10 +1738,10 @@ dcb_maybe_add_persistent(DCB *dcb)
pthread_self(), pthread_self(),
dcb, dcb,
dcb->user ? dcb->user : "", dcb->user ? dcb->user : "",
(dcb->server && dcb->server->persistpoolmax) ? dcb->server->persistpoolmax : 0, dcb->server->persistpoolmax,
dcb->dcb_errhandle_called ? "true" : "false", dcb->dcb_errhandle_called ? "true" : "false",
(dcb->flags & DCBF_HUNG) ? "true" : "false", (dcb->flags & DCBF_HUNG) ? "true" : "false",
dcb->server ? dcb->server->status : 0, dcb->server->status,
dcb->server->stats.n_persistent); dcb->server->stats.n_persistent);
} }
return false; return false;