[CP] to issue<57135401>:remove __all_ncomp_dll table data when drop user
This commit is contained in:
@ -858,6 +858,11 @@ int ObDDLOperator::drop_database(const ObDatabaseSchema &db_schema,
|
|||||||
package_schema->get_package_id(),
|
package_schema->get_package_id(),
|
||||||
new_schema_version, trans))) {
|
new_schema_version, trans))) {
|
||||||
LOG_WARN("drop package failed", KR(ret), "package_id", package_schema->get_package_id());
|
LOG_WARN("drop package failed", KR(ret), "package_id", package_schema->get_package_id());
|
||||||
|
} else if (OB_FAIL(pl::ObRoutinePersistentInfo::delete_dll_from_disk(trans,
|
||||||
|
tenant_id,
|
||||||
|
package_schema->get_package_id(),
|
||||||
|
package_schema->get_database_id()))) {
|
||||||
|
LOG_WARN("fail to delete ddl from disk", K(ret));
|
||||||
} else {
|
} else {
|
||||||
// delete audit in package
|
// delete audit in package
|
||||||
audits.reuse();
|
audits.reuse();
|
||||||
@ -923,6 +928,11 @@ int ObDDLOperator::drop_database(const ObDatabaseSchema &db_schema,
|
|||||||
} else if (OB_FAIL(schema_service_impl->get_routine_sql_service().drop_routine(
|
} else if (OB_FAIL(schema_service_impl->get_routine_sql_service().drop_routine(
|
||||||
*routine_info, new_schema_version, trans))) {
|
*routine_info, new_schema_version, trans))) {
|
||||||
LOG_WARN("drop routine failed", KR(ret), "routine_id", routine_id);
|
LOG_WARN("drop routine failed", KR(ret), "routine_id", routine_id);
|
||||||
|
} else if (OB_FAIL(pl::ObRoutinePersistentInfo::delete_dll_from_disk(trans,
|
||||||
|
routine_info->get_tenant_id(),
|
||||||
|
routine_info->get_routine_id(),
|
||||||
|
routine_info->get_database_id()))) {
|
||||||
|
LOG_WARN("fail to delete ddl from disk", K(ret));
|
||||||
} else {
|
} else {
|
||||||
// delete audit in routine
|
// delete audit in routine
|
||||||
audits.reuse();
|
audits.reuse();
|
||||||
@ -987,6 +997,25 @@ int ObDDLOperator::drop_database(const ObDatabaseSchema &db_schema,
|
|||||||
*udt_info, new_schema_version, trans))) {
|
*udt_info, new_schema_version, trans))) {
|
||||||
LOG_WARN("drop routine failed", "routine_id", udt_info->get_type_id(), K(ret));
|
LOG_WARN("drop routine failed", "routine_id", udt_info->get_type_id(), K(ret));
|
||||||
}
|
}
|
||||||
|
if (OB_SUCC(ret)) {
|
||||||
|
if (udt_info->is_object_spec_ddl() &&
|
||||||
|
OB_INVALID_ID != ObUDTObjectType::mask_object_id(udt_info->get_object_spec_id(tenant_id))) {
|
||||||
|
OZ (pl::ObRoutinePersistentInfo::delete_dll_from_disk(trans, tenant_id,
|
||||||
|
ObUDTObjectType::mask_object_id(udt_info->get_object_spec_id(tenant_id)),
|
||||||
|
udt_info->get_database_id()));
|
||||||
|
if (udt_info->has_type_body() &&
|
||||||
|
OB_INVALID_ID != ObUDTObjectType::mask_object_id(udt_info->get_object_body_id(tenant_id))) {
|
||||||
|
OZ (pl::ObRoutinePersistentInfo::delete_dll_from_disk(trans, tenant_id,
|
||||||
|
ObUDTObjectType::mask_object_id(udt_info->get_object_body_id(tenant_id)),
|
||||||
|
udt_info->get_database_id()));
|
||||||
|
}
|
||||||
|
} else if (udt_info->is_object_body_ddl() &&
|
||||||
|
OB_INVALID_ID != ObUDTObjectType::mask_object_id(udt_info->get_object_body_id(tenant_id))) {
|
||||||
|
OZ (pl::ObRoutinePersistentInfo::delete_dll_from_disk(trans, tenant_id,
|
||||||
|
ObUDTObjectType::mask_object_id(udt_info->get_object_body_id(tenant_id)),
|
||||||
|
udt_info->get_database_id()));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user