From 3dd20cb9ecf7747fc39b12d790b148ac6471f6a2 Mon Sep 17 00:00:00 2001 From: counterpoint Date: Tue, 25 Aug 2015 09:53:01 +0100 Subject: [PATCH] Acquire user for DCB from DCB session sooner, needed for persistent connection handling. --- server/core/dcb.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/server/core/dcb.c b/server/core/dcb.c index 8ca414ccc..89d3e524b 100644 --- a/server/core/dcb.c +++ b/server/core/dcb.c @@ -1849,6 +1849,9 @@ dcb_close(DCB *dcb) spinlock_acquire(&zombiespin); if (!dcb->dcb_is_zombie) { + char *user; + user = session_getUser(dcb->session); + dcb->user = strdup(user); /*< * Add closing dcb to the top of the list, setting zombie marker */ @@ -1869,11 +1872,9 @@ dcb_close(DCB *dcb) static bool dcb_maybe_add_persistent(DCB *dcb) { - char *user; int poolcount = -1; - user = session_getUser(dcb->session); - if (user - && strlen(user) + if (dcb->user + && strlen(dcb->user) && dcb->server && dcb->server->persistpoolmax && !dcb->dcb_errhandle_called