[ https://issues.apache.org/jira/browse/HDFS-8332?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14545312#comment-14545312 ]
Vinayakumar B commented on HDFS-8332: ------------------------------------- Hi [~busbey], I understand that Tests started failing after the commit, that doesnt mean that this Jira change is incompatible. Failure was due to the error in test, which was calling {{setReplication(..)}} even after {{fs.close()}}. of-course it was passing due to this bug. :) Below code is from BaseTestHttpFSWith.java {code} private void testSetReplication() throws Exception { FileSystem fs = FileSystem.get(getProxiedFSConf()); Path path = new Path(getProxiedFSTestDir(), "foo.txt"); OutputStream os = fs.create(path); os.write(1); os.close(); fs.close(); fs.setReplication(path, (short) 2); fs = getHttpFSFileSystem(); fs.setReplication(path, (short) 1); fs.close(); fs = FileSystem.get(getProxiedFSConf()); FileStatus status1 = fs.getFileStatus(path); fs.close(); Assert.assertEquals(status1.getReplication(), (short) 1); }{code} IMO, incompatible change is only when the user's valid code fails. Not when error code fails after change. Agree? > DFS client API calls should check filesystem closed > --------------------------------------------------- > > Key: HDFS-8332 > URL: https://issues.apache.org/jira/browse/HDFS-8332 > Project: Hadoop HDFS > Issue Type: Bug > Reporter: Rakesh R > Assignee: Rakesh R > Fix For: 2.8.0 > > Attachments: HDFS-8332-000.patch, HDFS-8332-001.patch, > HDFS-8332-002-Branch-2.patch, HDFS-8332-002.patch, > HDFS-8332.001.branch-2.patch > > > I could see {{listCacheDirectives()}} and {{listCachePools()}} APIs can be > called even after the filesystem close. Instead these calls should do > {{checkOpen}} and throws: > {code} > java.io.IOException: Filesystem closed > at org.apache.hadoop.hdfs.DFSClient.checkOpen(DFSClient.java:464) > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)