SecondaryNameNode (and NameNode) fail to load the edits log. I will include stack trace in next comment.
This is traced to the fact that LeaseManager uses String.relaceFirst() to replace front of a sting with another string. Unfortunately replaceFirst() uses regex, though the first argument is quoted by the code, the second argument is not. (the second arg is not really treated as regex but still gets processed for back references (as in 'sed s/first/second/g')
As Nicholas suggested, it is just simpler to use substring() to replace part of the string.
- is related to
HADOOP-4806 HDFS rename does not work correctly if src contains Java regular expression special characters
HDFS-240 Should HDFS restrict the names used for files?