Loyal-Young opened a new issue, #11266:
URL: https://github.com/apache/rocketmq/issues/11266

   ### Before Creating the Bug Report
   
   - [x] I inspected the current develop code and searched related issues/open 
pull requests.
   
   ### Summary
   
   ExceptionUtils.getRealException unwraps only one 
CompletionException/ExecutionException layer. Mixed nested wrappers leave a 
wrapper rather than the domain exception, so proxy response builders can fall 
back to an internal error instead of the correct domain response.
   
   ### Steps to Reproduce
   
   Wrap an IllegalArgumentException in CompletionException -> 
ExecutionException -> CompletionException and inspect getRealException's result.
   
   ### Expected Behavior
   
   Unwrap consecutive future wrappers until a non-wrapper or a cause-less 
wrapper is reached, without unwrapping domain exceptions or looping on cyclic 
causes.
   
   ### Environment / Additional Context
   
   - Reproduced against develop commit 
`78b96bc5e21216cd7896efae08f90c5cde4cae53`.
   - Regression test: `ExceptionUtilsNestedTest`.
   - The regression fails before the fix and passes afterward on JDK 8.
   - Proposed change is limited to the existing implementation; no protocol or 
new API is introduced.
   


-- 
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]

Reply via email to