chenxu14 commented on issue #205: HBASE-20902 when WAL sync failed, we should 
bypass the failed DN that previously used
URL: https://github.com/apache/hbase/pull/205#issuecomment-489547684
 
 
   > Mind explaining the implementation a bit? The patch is so big, and across 
lots of files, not easy to follow up...
   
   1. modified WALActionsListener#logRollRequested(boolean tooFewReplicas, 
boolean syncFailed)
   add syncFailed param to identify whether logRoll request was caused by a 
sync failure, 
   If so, LogRoller thread will call WAL#rollWriter(boolean force, boolean 
syncFailed), and pass syncFailed param to it
   
   2. modified WAL#rollWriter(boolean force, boolean syncFailed) throws 
FailedLogCloseException, IOException;
   If syncFailed is true, pass current WAL’s path to 
AbstractFSWAL#createWriterInstance(newPath, oldPath) as oldPath,
   so FanOutOneBlockAsyncDFSOutputHelper can determine which DN is slow based 
on the oldPath, and add it to excludesNodes

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