fix the core when access ObRequest after finish_sql_request
This commit is contained in:
parent
1c07891380
commit
072461d264
4
deps/oblib/src/rpc/ob_sql_request_operator.h
vendored
4
deps/oblib/src/rpc/ob_sql_request_operator.h
vendored
@ -49,7 +49,6 @@ public:
|
||||
virtual SSL *get_sql_ssl_st(ObRequest* req) = 0;
|
||||
virtual char* alloc_sql_response_buffer(ObRequest* req, int64_t size) = 0;
|
||||
virtual char *sql_reusable_alloc(ObRequest* req, const int64_t size) = 0;
|
||||
virtual void free_sql_response_buffer(ObRequest* req, void *buf) = 0;
|
||||
virtual common::ObAddr get_peer(const ObRequest* req) = 0;
|
||||
virtual void disconnect_sql_conn(ObRequest* req) = 0;
|
||||
virtual void finish_sql_request(ObRequest* req) = 0;
|
||||
@ -73,9 +72,6 @@ public:
|
||||
char* alloc_sql_response_buffer(ObRequest* req, int64_t size) {
|
||||
return get_operator(req).alloc_sql_response_buffer(req, size);
|
||||
}
|
||||
void free_sql_response_buffer(ObRequest* req, void *buf) {
|
||||
return get_operator(req).free_sql_response_buffer(req, buf);
|
||||
}
|
||||
char *sql_reusable_alloc(ObRequest* req, const int64_t size) {
|
||||
return get_operator(req).sql_reusable_alloc(req, size);
|
||||
}
|
||||
|
@ -63,12 +63,6 @@ char* ObEasySqlRequestOperator::alloc_sql_response_buffer(ObRequest* req, int64_
|
||||
return static_cast<char*>(buf);
|
||||
}
|
||||
|
||||
void ObEasySqlRequestOperator::free_sql_response_buffer(ObRequest* req, void *buf)
|
||||
{
|
||||
(void)req;
|
||||
(void)buf;
|
||||
}
|
||||
|
||||
char *ObEasySqlRequestOperator::sql_reusable_alloc(ObRequest* req, int64_t size)
|
||||
{
|
||||
void *buf = NULL;
|
||||
|
@ -28,7 +28,6 @@ public:
|
||||
virtual SSL *get_sql_ssl_st(rpc::ObRequest* req) override;
|
||||
virtual char* alloc_sql_response_buffer(rpc::ObRequest* req, int64_t size) override;
|
||||
virtual char *sql_reusable_alloc(rpc::ObRequest* req, const int64_t size) override;
|
||||
virtual void free_sql_response_buffer(rpc::ObRequest* req, void *) override;
|
||||
virtual common::ObAddr get_peer(const rpc::ObRequest* req) override;
|
||||
virtual void disconnect_sql_conn(rpc::ObRequest* req) override;
|
||||
virtual void finish_sql_request(rpc::ObRequest* req) override;
|
||||
|
@ -40,12 +40,6 @@ char* ObPocSqlRequestOperator::alloc_sql_response_buffer(ObRequest* req, int64_t
|
||||
return (char*)sess->alloc(size);
|
||||
}
|
||||
|
||||
void ObPocSqlRequestOperator::free_sql_response_buffer(ObRequest* req, void *buf)
|
||||
{
|
||||
(void)req;
|
||||
(void)buf;
|
||||
}
|
||||
|
||||
char *ObPocSqlRequestOperator::sql_reusable_alloc(ObRequest* req, int64_t size)
|
||||
{
|
||||
void *buf = NULL;
|
||||
|
@ -28,8 +28,7 @@ public:
|
||||
virtual SSL *get_sql_ssl_st(rpc::ObRequest* req) override;
|
||||
virtual char* alloc_sql_response_buffer(rpc::ObRequest* req, int64_t size) override;
|
||||
virtual char *sql_reusable_alloc(rpc::ObRequest* req, const int64_t size) override;
|
||||
virtual void free_sql_response_buffer(rpc::ObRequest* req, void *buf) override;
|
||||
virtual common::ObAddr get_peer(const rpc::ObRequest* req) override;
|
||||
virtual common::ObAddr get_peer(const rpc::ObRequest* req) override;
|
||||
virtual void disconnect_sql_conn(rpc::ObRequest* req) override;
|
||||
virtual void finish_sql_request(rpc::ObRequest* req) override;
|
||||
virtual int write_response(rpc::ObRequest* req, const char* buf, int64_t sz) override;
|
||||
|
@ -28,7 +28,6 @@ public:
|
||||
virtual SSL *get_sql_ssl_st(rpc::ObRequest* req) override;
|
||||
virtual char* alloc_sql_response_buffer(rpc::ObRequest* req, int64_t size) override;
|
||||
virtual char *sql_reusable_alloc(rpc::ObRequest* req, const int64_t size) override;
|
||||
virtual void free_sql_response_buffer(rpc::ObRequest* req, void *buf) override;
|
||||
virtual common::ObAddr get_peer(const rpc::ObRequest* req) override;
|
||||
virtual void disconnect_sql_conn(rpc::ObRequest* req) override;
|
||||
virtual void finish_sql_request(rpc::ObRequest* req) override;
|
||||
|
@ -974,7 +974,6 @@ int ObMPPacketSender::resize_ezbuf(const int64_t size)
|
||||
if (comp_context_.last_pkt_pos_ == ez_buf_->pos) {
|
||||
comp_context_.last_pkt_pos_ = tmp->pos;
|
||||
}
|
||||
SQL_REQ_OP.free_sql_response_buffer(req_, ez_buf_);
|
||||
ez_buf_ = tmp;
|
||||
}
|
||||
}
|
||||
@ -1009,7 +1008,6 @@ void ObMPPacketSender::finish_sql_request()
|
||||
if (conn_valid_ && !req_has_wokenup_) {
|
||||
SQL_REQ_OP.finish_sql_request(req_);
|
||||
req_has_wokenup_ = true;
|
||||
SQL_REQ_OP.free_sql_response_buffer(req_, ez_buf_);
|
||||
ez_buf_ = NULL;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user