Fix inner sql implicit 500 tenant memory usage

This commit is contained in:
obdev 2023-09-14 05:10:41 +00:00 committed by ob-robot
parent 21f23309cb
commit 30f03df840
3 changed files with 7 additions and 0 deletions

View File

@ -1049,6 +1049,7 @@ int ObInnerSQLConnection::start_transaction_inner(
} else if (OB_FAIL(arg.set_tz_info_wrap(get_session().get_tz_info_wrap()))) {
LOG_WARN("fail to set tz info wrap", K(ret));
} else if (FALSE_IT(handler->get_result()->set_conn_id(OB_INVALID_ID))) {
} else if (FALSE_IT(handler->get_result()->set_tenant_id(get_session().get_effective_tenant_id()))) {
} else if (OB_FAIL(GCTX.inner_sql_rpc_proxy_->to(resource_server_addr).by(tenant_id).
timeout(query_timeout).group_id(group_id_).
inner_sql_sync_transmit(

View File

@ -294,6 +294,7 @@ int ObInnerSqlRpcP::process()
sqlclient::ObISQLConnection *conn = NULL;
observer::ObInnerSQLConnection *inner_conn = NULL;
observer::ObResourceInnerSQLConnectionPool *pool = gctx_.res_inner_conn_pool_;
transmit_result.set_tenant_id(transmit_arg.get_tenant_id());
common::ObScanner &scanner = transmit_result.get_scanner();
scanner.get_row_store().set_use_compact(false);
scanner.get_datum_store().set_dumped(false); // just for serializing

View File

@ -219,6 +219,11 @@ public:
int copy_field_columns(const common::ObIArray<common::ObField> &field_columns);
void reset_field_columns() { field_columns_.reset(); } ;
const common::ObSArray<common::ObField> &get_field_columns() { return field_columns_; };
void set_tenant_id(uint64_t tenant_id)
{
scanner_.set_tenant_id(tenant_id);
allocator_.set_tenant_id(tenant_id);
}
void reset()
{