comnetwork commented on a change in pull request #4039:
URL: https://github.com/apache/hbase/pull/4039#discussion_r790410944



##########
File path: 
hbase-asyncfs/src/main/java/org/apache/hadoop/hbase/io/asyncfs/FanOutOneBlockAsyncDFSOutput.java
##########
@@ -231,7 +231,11 @@ private void completed(Channel channel) {
   // so that the implementation will not burn up our brain as there are 
multiple state changes and
   // checks.
   private synchronized void failed(Channel channel, Supplier<Throwable> 
errorSupplier) {
-    if (state == State.BROKEN || state == State.CLOSED) {
+    if (state == State.CLOSED) {
+      return;
+    }
+    if (state == State.BROKEN) {
+      failWaitingAckQueue(channel, errorSupplier);

Review comment:
       @Apache9 ,thank you very much, in any case , my original test using 
reflection to create MyFanOutOneBlockAsyncDFSOutput is improper. I have 
improved my test to remove reflection and use Mockito to simulate slow DNs  by 
discarding the message when flushing to dn2 and dn3. FYI.




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

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


Reply via email to