dlg99 commented on issue #1088: ISSUE #1086 (@bug W-4146427@) Client-side 
backpressure in netty (Fixes: io.netty.util.internal.OutOfDirectMemoryError 
under continuous heavy load)
URL: https://github.com/apache/bookkeeper/pull/1088#issuecomment-365740314
 
 
   @sijie sorry for the delay, missed the notification. 
   
   I re-implemented it with the following idea in mind:
   Do not block worker pool. we can write to netty channel even if it is not 
writable (as it happens without this change). When channel is not writable 
still write it to netty and send similar flag on PCBC and so on, bubbling up 
this status.
   LedgerHandle checks if it needs to slow down and waits until either time out 
expires or write allowed. 
   If timeout expires, LedgerHandle sets flag "allowFastFail" and still sends 
op downstream. in case allowFastFail is set and channel is still not writable 
PCBC fails op so ensemble change etc can happen.
   
   
   
   
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to