[
https://issues.apache.org/jira/browse/HBASE-19435?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16281091#comment-16281091
]
Zach York commented on HBASE-19435:
-----------------------------------
[~ram_krish]
bq. are you saying about the forceful eviction of the cache blocks when a
compaction happens?
I'm not sure exactly where it is happening, but a major compaction is run and
then some of these file connections are closed. I'll continue investigating
that after this JIRA.
[~anoop.hbase]
bq. Where is this code of disable cache after 60 sec? So within this 60 secs
period if all attempts to refresh channel were failed( called with diff
getBlocks says) then again this disabling would happen?
https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java#L1135
is where the code to disable cache after 60 seconds of throwing IOExceptions.
If all attempts to refresh channel threw an IOException, the cache still would
be disabled here.
I will move the try to only contain the affecting code.
I think as a follow-up JIRA to this, we should investigate re-enabling the
cache after a period (especially for the case of FileIOEngine since this could
be due to a transient issue).
> Reopen Files for ClosedChannelException in BucketCache
> ------------------------------------------------------
>
> Key: HBASE-19435
> URL: https://issues.apache.org/jira/browse/HBASE-19435
> Project: HBase
> Issue Type: Bug
> Components: BucketCache
> Affects Versions: 2.0.0, 1.3.1
> Reporter: Zach York
> Assignee: Zach York
> Attachments: HBASE-19435.master.001.patch
>
>
> When using the FileIOEngine for BucketCache, the cache will be disabled if
> the connection is interrupted or closed. HBase will then get
> ClosedChannelExceptions trying to access the file. After 60s, the RS will
> disable the cache. This causes severe read performance degradation for
> workloads that rely on this cache. FileIOEngine never tries to reopen the
> connection. This JIRA is to reopen files when the BucketCache encounters a
> ClosedChannelException.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)