platoneko opened a new issue, #10066: URL: https://github.com/apache/incubator-doris/issues/10066
### Search before asking - [X] I had searched in the [issues](https://github.com/apache/incubator-doris/issues?q=is%3Aissue) and found no similar issues. ### Description Currently, MetricRegistry and MetricEntity use SpinLock to solve concurrency problems. However when `MetricRegistry` call trigger_all_hooks, these triggered hook functions must hold other mutex, and these mutex may be held during some long time work. <img width="427" alt="image" src="https://user-images.githubusercontent.com/36853835/173046811-0d40637a-29ce-4bfc-a46d-d5109757a47f.png"> <img width="528" alt="image" src="https://user-images.githubusercontent.com/36853835/173047086-8c19b6ec-b39f-4476-8f06-36ea217e3e18.png"> i.e. LoadChannelMgr::_lock may be held during MemTable flush. ### Solution _No response_ ### Are you willing to submit PR? - [X] Yes I am willing to submit a PR! ### Code of Conduct - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org