suxiaogang223 opened a new pull request, #61103:
URL: https://github.com/apache/doris/pull/61103

   ## What problem does this PR solve?
   
   This fixes a potential Java deadlock caused by lock-order inversion between:
   
   -  object monitor ( methods)
   - Caffeine/ConcurrentHashMap internal key locks during cache 
invalidation/loading
   
   The deadlock can happen when one thread holds the catalog monitor and 
invalidates cache, while another thread holds cache-internal lock and calls 
back into catalog initialization.
   
   ## What is changed?
   
   1. In , split reset flow into:
   - lock-protected state reset ()
   - cache refresh outside catalog monitor
   
   2. In , keep identifier mapping reset under lock, but perform  outside lock.
   
   3. Add FE unit test  to assert  runs without holding catalog monitor (both 
base external catalog and JDBC external catalog path).
   
   ## Testing
   
   - Not rerun to completion in this turn after branch switch.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to