simbadzina commented on PR #5142:
URL: https://github.com/apache/hadoop/pull/5142#issuecomment-1319526622

   > > @ZanderXu @tomscut could you please take a look whenever you get a 
chance.
   > 
   > @simbadzina I did a quick review. The change looks good to me. I am 
curious about that what scenarios will use this feature without `msyc()`. Can 
you share me some cases?
   
   Thanks @ZanderXu . Third party readers issuing multiple reads will use msync 
if they want consistency, both before and after this path. The msync this flag 
eliminates is the one at the initialization of the ObserverReadProxyProvider 
here
   
https://github.com/apache/hadoop/blob/trunk/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/server/namenode/ha/ObserverReadProxyProvider.java#L341-L348
   
   Taking an example of a client just doing a list status.
   
   If the client is using ObserverReadProxyProvider. They'll be two calls.
   1) msync (during initialization)
   2) getListing (actual call the client wants to do)
   When the router gets the msync, it will fan this out to all namespace, which 
is expensive.
   
   With this patch, they'll only be one call.
   1) getListing
   The router will send this call to the active.
   
   For future reads after this, there is no difference.


-- 
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: common-issues-unsubscr...@hadoop.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to