let the on_close procedure the same with ObDisconnect::run
This commit is contained in:
@ -185,10 +185,10 @@ void ObSMConnectionCallback::destroy(ObSMConnection& conn)
|
|||||||
}
|
}
|
||||||
// free session locally
|
// free session locally
|
||||||
if (OB_FAIL(ret)) {
|
if (OB_FAIL(ret)) {
|
||||||
int tmp_ret = GCTX.session_mgr_->free_session(ctx);
|
ObMPDisconnect disconnect_processor(ctx);
|
||||||
if (OB_UNLIKELY(OB_SUCCESS != tmp_ret)) {
|
rpc::frame::ObReqProcessor *processor = static_cast<rpc::frame::ObReqProcessor *>(&disconnect_processor);
|
||||||
LOG_WARN("free session fail", K(ctx), K(tmp_ret));
|
if (OB_FAIL(processor->run())) {
|
||||||
ret = tmp_ret;
|
LOG_WARN("free session fail", K(ctx));
|
||||||
} else {
|
} else {
|
||||||
LOG_INFO("free session successfully", K(conn.sessid_),
|
LOG_INFO("free session successfully", K(conn.sessid_),
|
||||||
"proxy_sessid", conn.proxy_sessid_, K(ctx));
|
"proxy_sessid", conn.proxy_sessid_, K(ctx));
|
||||||
|
|||||||
@ -226,10 +226,10 @@ int ObSMHandler::on_close(easy_connection_t *c)
|
|||||||
}
|
}
|
||||||
// free session locally
|
// free session locally
|
||||||
if (OB_FAIL(ret)) {
|
if (OB_FAIL(ret)) {
|
||||||
int tmp_ret = gctx_.session_mgr_->free_session(ctx);
|
ObMPDisconnect disconnect_processor(ctx);
|
||||||
if (OB_UNLIKELY(OB_SUCCESS != tmp_ret)) {
|
rpc::frame::ObReqProcessor *processor = static_cast<rpc::frame::ObReqProcessor *>(&disconnect_processor);
|
||||||
LOG_WARN("free session fail", K(ctx), K(tmp_ret));
|
if (OB_FAIL(processor->run())) {
|
||||||
ret = tmp_ret;
|
LOG_WARN("free session fail", K(ctx));
|
||||||
} else {
|
} else {
|
||||||
LOG_INFO("free session successfully", K(conn->sessid_),
|
LOG_INFO("free session successfully", K(conn->sessid_),
|
||||||
"proxy_sessid", conn->proxy_sessid_, K(ctx));
|
"proxy_sessid", conn->proxy_sessid_, K(ctx));
|
||||||
|
|||||||
Reference in New Issue
Block a user