diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.java index 648d4bca7b7..29b810f17a5 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/FileIOEngine.java @@ -22,6 +22,7 @@ import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; import java.nio.ByteBuffer; +import java.nio.channels.ClosedByInterruptException; import java.nio.channels.ClosedChannelException; import java.nio.channels.FileChannel; import java.util.Arrays; @@ -229,6 +230,8 @@ public class FileIOEngine implements IOEngine { } try { accessLen = accessor.access(fileChannel, buffer, accessOffset); + } catch (ClosedByInterruptException e) { + throw e; } catch (ClosedChannelException e) { LOG.warn("Caught ClosedChannelException accessing BucketCache, reopening file. ", e); refreshFileConnection(accessFileNum);