In the current develop branch, line 379 of mysql_backend.c is: service_refresh_users(dcb->session->service); this will naturally fail and cause a crash if dcb->session is NULL. It seems that this situation can arise.
In the case in point, the DCB was in state DCB_STATE_POLLING, which implies that the DCB had not been processed by the zombie mechanism. Nor was there any indication of corruption.
The big question here is whether there are any rules for when dcb->session may be null. Most of the time it isn't NULL, but obviously sometimes it is. How did it come to be NULL?
Does code have to assume that dcb->session could become NULL at any time? Or are there known circumstances where it is safe to assume that it will not be NULL?