Close client DCB with a hangup in the backend protocol
Directly closing the client DCB in the backend protocol modules is not correct anymore as the state of the session doesn't change when the client DCB is closed. By propagating the shutdown of the session with a fake hangup to the client DCB, the closing of the DCB is done only once. Added debug assertions that make sure all DCBs are closed only once. Removed redundant code in the backend protocol error handling code.
This commit is contained in:
@ -43,6 +43,8 @@ Backend::~Backend()
|
||||
|
||||
void Backend::close(close_type type)
|
||||
{
|
||||
ss_dassert(m_dcb->n_close == 0);
|
||||
|
||||
if (!m_closed)
|
||||
{
|
||||
m_closed = true;
|
||||
|
Reference in New Issue
Block a user