Yongjun Zhang created HADOOP-12604:
--------------------------------------

             Summary: Exception may be swallowed in KMSClientProvider
                 Key: HADOOP-12604
                 URL: https://issues.apache.org/jira/browse/HADOOP-12604
             Project: Hadoop Common
          Issue Type: Bug
          Components: kms
            Reporter: Yongjun Zhang
            Assignee: Yongjun Zhang


In KMSClientProvider# createConnection
{code}
      try {
        is = conn.getInputStream();
        ret = mapper.readValue(is, klass);
      } catch (IOException ex) {
        if (is != null) {
          is.close(); <== close may throw exception
        }
        throw ex;
      } finally {
        if (is != null) {
          is.close();
        }
      }
    }
{code}

{{ex}} may be swallowed when {{close}} highlighted in the code throws 
exception.  Thanks [~qwertymaniac] for pointing this out.

BTW, I think we should be able to consolidate the two {{is.close()}} in the 
above code, so we don't close the same stream twice. The one in the {{finally 
block}} may be called after an exception is thrown or not, and it may throw 
exception too, we need to be careful not to swallow exception here too.






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to