visit2rahul opened a new issue, #4572:
URL: https://github.com/apache/polaris/issues/4572

   ### Is your feature request related to a problem? Please describe.
   
   #4498 guards `onComplete()` with `synchronized (processor)` so it can't run 
concurrently with `onNext()`. That only works because Mutiny's 
`UnicastProcessor.onNext` is `synchronized` on the same object monitor today. 
As noted on #4498, that's an internal Mutiny detail -- if a future version 
moves to a private lock, the guard silently stops protecting anything.
   
   ### Describe the solution you'd like
   
   The buffer should own its synchronization instead of depending on Mutiny's 
internal `synchronized`, so the guarantee can't be broken by a future Mutiny 
change. @adutra already sketched an approach (wrapping the processor so it 
carries its own lock): 
https://github.com/apache/polaris/pull/4498#issuecomment-4501582601
   
   ### Additional context
   
   Follow-up to #4498, and to the original race condition #2568.


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