do not send rpc when holds a lock
This commit is contained in:
@ -716,8 +716,6 @@ int ObTenantDirectLoadMgr::get_tablet_cache_interval(
|
|||||||
ObTabletCacheInterval &interval)
|
ObTabletCacheInterval &interval)
|
||||||
{
|
{
|
||||||
int ret = OB_SUCCESS;
|
int ret = OB_SUCCESS;
|
||||||
ObTabletDirectLoadMgrKey mgr_key(tablet_id, true/*full direct load*/); // only support in ddl, which is full direct load
|
|
||||||
ObBucketHashWLockGuard guard(bucket_lock_, mgr_key.hash());
|
|
||||||
ObTabletAutoincrementService &autoinc_service = ObTabletAutoincrementService::get_instance();
|
ObTabletAutoincrementService &autoinc_service = ObTabletAutoincrementService::get_instance();
|
||||||
if (OB_UNLIKELY(!is_inited_)) {
|
if (OB_UNLIKELY(!is_inited_)) {
|
||||||
ret = OB_NOT_INIT;
|
ret = OB_NOT_INIT;
|
||||||
@ -728,6 +726,8 @@ int ObTenantDirectLoadMgr::get_tablet_cache_interval(
|
|||||||
} else if (OB_FAIL(autoinc_service.get_tablet_cache_interval(MTL_ID(), interval))) {
|
} else if (OB_FAIL(autoinc_service.get_tablet_cache_interval(MTL_ID(), interval))) {
|
||||||
LOG_WARN("failed to get tablet cache intervals", K(ret));
|
LOG_WARN("failed to get tablet cache intervals", K(ret));
|
||||||
} else {
|
} else {
|
||||||
|
ObTabletDirectLoadMgrKey mgr_key(tablet_id, true/*full direct load*/); // only support in ddl, which is full direct load
|
||||||
|
ObBucketHashWLockGuard guard(bucket_lock_, mgr_key.hash());
|
||||||
ObTabletDirectLoadExecContext exec_context;
|
ObTabletDirectLoadExecContext exec_context;
|
||||||
ObTabletDirectLoadExecContextId exec_id;
|
ObTabletDirectLoadExecContextId exec_id;
|
||||||
exec_id.tablet_id_ = tablet_id;
|
exec_id.tablet_id_ = tablet_id;
|
||||||
|
|||||||
Reference in New Issue
Block a user