Acquire user for DCB from DCB session sooner, needed for persistent connection handling.

This commit is contained in:
counterpoint
2015-08-25 09:53:01 +01:00
parent 980b56e7fa
commit 3dd20cb9ec

View File

@ -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