[ https://issues.apache.org/jira/browse/HDFS-5944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13906357#comment-13906357 ]
Hadoop QA commented on HDFS-5944: --------------------------------- {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12629879/HDFS-5944.trunk.patch against trunk revision . {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 1 new or modified test files. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:green}+1 javadoc{color}. There were no new javadoc warning messages. {color:green}+1 eclipse:eclipse{color}. The patch built with eclipse:eclipse. {color:green}+1 findbugs{color}. The patch does not introduce any new Findbugs (version 1.3.9) warnings. {color:green}+1 release audit{color}. The applied patch does not increase the total number of release audit warnings. {color:red}-1 core tests{color}. The patch failed these unit tests in hadoop-hdfs-project/hadoop-hdfs: org.apache.hadoop.hdfs.server.namenode.ha.TestHASafeMode {color:green}+1 contrib tests{color}. The patch passed contrib unit tests. Test results: https://builds.apache.org/job/PreCommit-HDFS-Build/6181//testReport/ Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/6181//console This message is automatically generated. > LeaseManager:findLeaseWithPrefixPath didn't handle path like /a/b/ right > cause SecondaryNameNode failed do checkpoint > --------------------------------------------------------------------------------------------------------------------- > > Key: HDFS-5944 > URL: https://issues.apache.org/jira/browse/HDFS-5944 > Project: Hadoop HDFS > Issue Type: Bug > Components: namenode > Affects Versions: 1.2.0, 2.2.0 > Reporter: zhaoyunjiong > Assignee: zhaoyunjiong > Attachments: HDFS-5944-branch-1.2.patch, HDFS-5944.patch, > HDFS-5944.test.txt, HDFS-5944.trunk.patch > > > In our cluster, we encountered error like this: > java.io.IOException: saveLeases found path > /XXX/20140206/04_30/_SUCCESS.slc.log but is not under construction. > at > org.apache.hadoop.hdfs.server.namenode.FSNamesystem.saveFilesUnderConstruction(FSNamesystem.java:6217) > at > org.apache.hadoop.hdfs.server.namenode.FSImageFormat$Saver.save(FSImageFormat.java:607) > at > org.apache.hadoop.hdfs.server.namenode.FSImage.saveCurrent(FSImage.java:1004) > at > org.apache.hadoop.hdfs.server.namenode.FSImage.saveNamespace(FSImage.java:949) > What happened: > Client A open file /XXX/20140206/04_30/_SUCCESS.slc.log for write. > And Client A continue refresh it's lease. > Client B deleted /XXX/20140206/04_30/ > Client C open file /XXX/20140206/04_30/_SUCCESS.slc.log for write > Client C closed the file /XXX/20140206/04_30/_SUCCESS.slc.log > Then secondaryNameNode try to do checkpoint and failed due to failed to > delete lease hold by Client A when Client B deleted /XXX/20140206/04_30/. > The reason is a bug in findLeaseWithPrefixPath: > int srclen = prefix.length(); > if (p.length() == srclen || p.charAt(srclen) == Path.SEPARATOR_CHAR) { > entries.put(entry.getKey(), entry.getValue()); > } > Here when prefix is /XXX/20140206/04_30/, and p is > /XXX/20140206/04_30/_SUCCESS.slc.log, p.charAt(srcllen) is '_'. > The fix is simple, I'll upload patch later. -- This message was sent by Atlassian JIRA (v6.1.5#6160)