You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "ramkrishna.s.vasudevan (Jira)" <ji...@apache.org> on 2020/05/05 06:01:00 UTC

[jira] [Created] (HBASE-24326) Removal from streamReaders can be done in finally

ramkrishna.s.vasudevan created HBASE-24326:
----------------------------------------------

             Summary: Removal from streamReaders can be done in finally
                 Key: HBASE-24326
                 URL: https://issues.apache.org/jira/browse/HBASE-24326
             Project: HBase
          Issue Type: Bug
          Components: regionserver
    Affects Versions: 2.1.6
            Reporter: ramkrishna.s.vasudevan
            Assignee: ramkrishna.s.vasudevan
             Fix For: 2.1.10, 2.2.5


As part of the fix for https://issues.apache.org/jira/browse/HBASE-21551 we removed the storeReaders from the set inside the try block.
The code there seems to catch IOException. But if you drill down and see how the actual readers are closed - FSDataInputStreamWrapper#close() uses IOUtils.closeQuietly where we swallow the IOException (So ideally IOException will not be thrown). But there are cases we endup getting other type of RuntimeExceptions which may fail the close() and we endup not removing the storeReader from the Set. So it is safe to always remove it in finally. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)