wy96f commented on issue #2845: ARTEMIS-2336 Use zero copy to replicate 
journal/page/large message file (AGAIN)
URL: https://github.com/apache/activemq-artemis/pull/2845#issuecomment-541494236
 
 
   @franz1981
   
   > fix 
https://github.com/netty/netty/blob/ff7a9fa091a8bf2e10020f83fc4df1c44098bbbb/transport/src/main/java/io/netty/channel/DefaultMessageSizeEstimator.java#L45
 in order to account for chunked files correctly and flow control them while 
being enqueued into chunk writer
   
   Not sure. I think netty is just limiting data in memory so not accounting 
for chunked file and file region?
   
   > change how sync done timeout is being calculated and consider the total 
time to replicate (from the first file region/chunk sent) instead of the time 
from when the sync done is being enqueued in Netty
   
   We block all journal related operations during sync done interval to make 
sure replica has received all data, so we‘d better not change it.
   
   Maybe we can:
   
   * We use original implementation when broker doesn't support zero region. 
IMO the chunked file way is more or less same with original one. At some point 
original version might be better bcs it reads file data in non-netty thread 
that can be beneficial where netty threads is busy taking care of new sent 
packets.
   
   * Another possible alternative is to use rate limiter like guava instead of 
netty flow control to work around the problem?
   
   

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to