sodonnel commented on PR #10440:
URL: https://github.com/apache/ozone/pull/10440#issuecomment-4750466022

   This version looks a lot cleaner, however ...
   
   When we created ContainerReplicaPendingOps (CRPO), out intention was to make 
it a standalone class with no dependencies. Then we discovered that when Ops 
expired, RM needed to be told about them, and we didn't want CRPO to have a 
dependency on RM. So we create the interface 
`ContainerReplicaPendingOpsSubscriber` with the intention that any other 
component that needed to know about things in CRPO could subscribe to it and 
hence it would remain dependency free. At the moment that interface only 
notifies about opCompleted, but it could be extend to have opAdded() too.
   
   That way, NodeManager can be set as a subscriber and just drop the events it 
doesn't care about. It also makes it more extensible for the future if anything 
else comes along that needs to get similar information.


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