Fix ps cache is invalid when calling cache_evict_all_ps
This commit is contained in:
@ -581,8 +581,8 @@ int ObPlanCacheManager::revert_ps_cache(const uint64_t& tenant_id)
|
|||||||
if (OB_SUCCESS == tmp_ret && NULL != ppc) {
|
if (OB_SUCCESS == tmp_ret && NULL != ppc) {
|
||||||
SQL_PC_LOG(INFO, "plan_cache_manager revert ps plan cache", "pc ref_count", ppc->get_ref_count(), K(tenant_id));
|
SQL_PC_LOG(INFO, "plan_cache_manager revert ps plan cache", "pc ref_count", ppc->get_ref_count(), K(tenant_id));
|
||||||
// cancel scheduled task
|
// cancel scheduled task
|
||||||
ppc->set_valid(false);
|
|
||||||
ppc->dec_ref_count();
|
ppc->dec_ref_count();
|
||||||
|
ppc->set_valid(false);
|
||||||
} else if (OB_HASH_NOT_EXIST == tmp_ret) { // maybe erase by other thread
|
} else if (OB_HASH_NOT_EXIST == tmp_ret) { // maybe erase by other thread
|
||||||
SQL_PC_LOG(INFO, "PS Plan Cache not exist", K(tenant_id));
|
SQL_PC_LOG(INFO, "PS Plan Cache not exist", K(tenant_id));
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user