Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java Tue Jul 30 07:56:23 2013 @@ -249,7 +249,7 @@ public class SecondaryNameNode implement checkpointImage.recoverCreate(commandLineOpts.shouldFormat()); checkpointImage.deleteTempEdits(); - namesystem = new FSNamesystem(conf, checkpointImage); + namesystem = new FSNamesystem(conf, checkpointImage, true); // Initialize other scheduling parameters from the configuration checkpointConf = new CheckpointConf(conf);
Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/ImageLoaderCurrent.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/ImageLoaderCurrent.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/ImageLoaderCurrent.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/ImageLoaderCurrent.java Tue Jul 30 07:56:23 2013 @@ -126,7 +126,7 @@ class ImageLoaderCurrent implements Imag new SimpleDateFormat("yyyy-MM-dd HH:mm"); private static int[] versions = { -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26, -27, -28, -30, -31, -32, -33, -34, -35, -36, -37, -38, -39, - -40, -41, -42, -43, -44, -45, -46 }; + -40, -41, -42, -43, -44, -45, -46, -47 }; private int imageVersion = 0; private final Map<Long, String> subtreeMap = new HashMap<Long, String>(); Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java Tue Jul 30 07:56:23 2013 @@ -57,8 +57,11 @@ import org.apache.hadoop.fs.BlockLocatio import org.apache.hadoop.fs.CommonConfigurationKeys; import org.apache.hadoop.fs.FSDataInputStream; import org.apache.hadoop.fs.FSDataOutputStream; +import org.apache.hadoop.fs.FileContext; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.FileSystem.Statistics; +import org.apache.hadoop.fs.Options.Rename; +import org.apache.hadoop.fs.permission.FsPermission; import org.apache.hadoop.fs.Path; import org.apache.hadoop.hdfs.MiniDFSCluster.NameNodeInfo; import org.apache.hadoop.hdfs.client.HdfsDataInputStream; @@ -942,4 +945,102 @@ public class DFSTestUtil { return new DFSTestUtil(nFiles, maxLevels, maxSize, minSize); } } + + /** + * Run a set of operations and generate all edit logs + */ + public static void runOperations(MiniDFSCluster cluster, + DistributedFileSystem filesystem, Configuration conf, long blockSize, + int nnIndex) throws IOException { + // create FileContext for rename2 + FileContext fc = FileContext.getFileContext(cluster.getURI(0), conf); + + // OP_ADD 0 + final Path pathFileCreate = new Path("/file_create"); + FSDataOutputStream s = filesystem.create(pathFileCreate); + // OP_CLOSE 9 + s.close(); + // OP_RENAME_OLD 1 + final Path pathFileMoved = new Path("/file_moved"); + filesystem.rename(pathFileCreate, pathFileMoved); + // OP_DELETE 2 + filesystem.delete(pathFileMoved, false); + // OP_MKDIR 3 + Path pathDirectoryMkdir = new Path("/directory_mkdir"); + filesystem.mkdirs(pathDirectoryMkdir); + // OP_ALLOW_SNAPSHOT 29 + filesystem.allowSnapshot(pathDirectoryMkdir); + // OP_DISALLOW_SNAPSHOT 30 + filesystem.disallowSnapshot(pathDirectoryMkdir); + // OP_CREATE_SNAPSHOT 26 + String ssName = "snapshot1"; + filesystem.allowSnapshot(pathDirectoryMkdir); + filesystem.createSnapshot(pathDirectoryMkdir, ssName); + // OP_RENAME_SNAPSHOT 28 + String ssNewName = "snapshot2"; + filesystem.renameSnapshot(pathDirectoryMkdir, ssName, ssNewName); + // OP_DELETE_SNAPSHOT 27 + filesystem.deleteSnapshot(pathDirectoryMkdir, ssNewName); + // OP_SET_REPLICATION 4 + s = filesystem.create(pathFileCreate); + s.close(); + filesystem.setReplication(pathFileCreate, (short)1); + // OP_SET_PERMISSIONS 7 + Short permission = 0777; + filesystem.setPermission(pathFileCreate, new FsPermission(permission)); + // OP_SET_OWNER 8 + filesystem.setOwner(pathFileCreate, new String("newOwner"), null); + // OP_CLOSE 9 see above + // OP_SET_GENSTAMP 10 see above + // OP_SET_NS_QUOTA 11 obsolete + // OP_CLEAR_NS_QUOTA 12 obsolete + // OP_TIMES 13 + long mtime = 1285195527000L; // Wed, 22 Sep 2010 22:45:27 GMT + long atime = mtime; + filesystem.setTimes(pathFileCreate, mtime, atime); + // OP_SET_QUOTA 14 + filesystem.setQuota(pathDirectoryMkdir, 1000L, + HdfsConstants.QUOTA_DONT_SET); + // OP_RENAME 15 + fc.rename(pathFileCreate, pathFileMoved, Rename.NONE); + // OP_CONCAT_DELETE 16 + Path pathConcatTarget = new Path("/file_concat_target"); + Path[] pathConcatFiles = new Path[2]; + pathConcatFiles[0] = new Path("/file_concat_0"); + pathConcatFiles[1] = new Path("/file_concat_1"); + + long length = blockSize * 3; // multiple of blocksize for concat + short replication = 1; + long seed = 1; + DFSTestUtil.createFile(filesystem, pathConcatTarget, length, replication, + seed); + DFSTestUtil.createFile(filesystem, pathConcatFiles[0], length, replication, + seed); + DFSTestUtil.createFile(filesystem, pathConcatFiles[1], length, replication, + seed); + filesystem.concat(pathConcatTarget, pathConcatFiles); + + // OP_SYMLINK 17 + Path pathSymlink = new Path("/file_symlink"); + fc.createSymlink(pathConcatTarget, pathSymlink, false); + + // OP_REASSIGN_LEASE 22 + String filePath = "/hard-lease-recovery-test"; + byte[] bytes = "foo-bar-baz".getBytes(); + DFSClientAdapter.stopLeaseRenewer(filesystem); + FSDataOutputStream leaseRecoveryPath = filesystem.create(new Path(filePath)); + leaseRecoveryPath.write(bytes); + leaseRecoveryPath.hflush(); + // Set the hard lease timeout to 1 second. + cluster.setLeasePeriod(60 * 1000, 1000, nnIndex); + // wait for lease recovery to complete + LocatedBlocks locatedBlocks; + do { + try { + Thread.sleep(1000); + } catch (InterruptedException e) {} + locatedBlocks = DFSClientAdapter.callGetBlockLocations( + cluster.getNameNodeRpc(nnIndex), filePath, 0L, bytes.length); + } while (locatedBlocks.isUnderConstruction()); + } } Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/MiniDFSCluster.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/MiniDFSCluster.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/MiniDFSCluster.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/MiniDFSCluster.java Tue Jul 30 07:56:23 2013 @@ -2038,6 +2038,10 @@ public class MiniDFSCluster { NameNodeAdapter.setLeasePeriod(getNamesystem(), soft, hard); } + public void setLeasePeriod(long soft, long hard, int nnIndex) { + NameNodeAdapter.setLeasePeriod(getNamesystem(nnIndex), soft, hard); + } + public void setWaitSafeMode(boolean wait) { this.waitSafeMode = wait; } Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/CreateEditsLog.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/CreateEditsLog.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/CreateEditsLog.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/CreateEditsLog.java Tue Jul 30 07:56:23 2013 @@ -26,7 +26,6 @@ import org.apache.hadoop.hdfs.protocol.B import org.apache.hadoop.hdfs.server.blockmanagement.BlockInfo; import org.apache.hadoop.hdfs.server.common.GenerationStamp; import org.apache.hadoop.hdfs.server.common.Storage; -import org.apache.hadoop.hdfs.server.namenode.INodeId; /** * @@ -97,8 +96,9 @@ public class CreateEditsLog { dirInode = new INodeDirectory(inodeId.nextValue(), null, p, 0L); editLog.logMkDir(currentDir, dirInode); } - editLog.logOpenFile(filePath, new INodeFileUnderConstruction( - inodeId.nextValue(), p, replication, 0, blockSize, "", "", null)); + editLog.logOpenFile(filePath, + new INodeFileUnderConstruction(inodeId.nextValue(), p, replication, + 0, blockSize, "", "", null), false); editLog.logCloseFile(filePath, inode); if (currentBlockId - bidAtSync >= 2000) { // sync every 2K blocks Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestCommitBlockSynchronization.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestCommitBlockSynchronization.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestCommitBlockSynchronization.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestCommitBlockSynchronization.java Tue Jul 30 07:56:23 2013 @@ -18,9 +18,9 @@ package org.apache.hadoop.hdfs.server.namenode; -import static org.hamcrest.CoreMatchers.is; -import static org.junit.Assert.*; +import static org.junit.Assert.fail; import static org.mockito.Matchers.any; +import static org.mockito.Matchers.anyBoolean; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; @@ -28,7 +28,9 @@ import static org.mockito.Mockito.spy; import java.io.IOException; import org.apache.hadoop.conf.Configuration; -import org.apache.hadoop.hdfs.protocol.*; +import org.apache.hadoop.hdfs.protocol.Block; +import org.apache.hadoop.hdfs.protocol.DatanodeID; +import org.apache.hadoop.hdfs.protocol.ExtendedBlock; import org.apache.hadoop.hdfs.server.blockmanagement.BlockInfo; import org.apache.hadoop.hdfs.server.blockmanagement.BlockInfoUnderConstruction; import org.apache.hadoop.hdfs.server.blockmanagement.DatanodeDescriptor; @@ -64,7 +66,7 @@ public class TestCommitBlockSynchronizat any(INodeFileUnderConstruction.class), any(BlockInfo.class)); doReturn("").when(namesystemSpy).persistBlocks( - any(INodeFileUnderConstruction.class)); + any(INodeFileUnderConstruction.class), anyBoolean()); doReturn(mock(FSEditLog.class)).when(namesystemSpy).getEditLog(); return namesystemSpy; @@ -127,7 +129,6 @@ public class TestCommitBlockSynchronizat INodeFileUnderConstruction file = mock(INodeFileUnderConstruction.class); Block block = new Block(blockId, length, genStamp); FSNamesystem namesystemSpy = makeNameSystemSpy(block, file); - DatanodeDescriptor[] targets = new DatanodeDescriptor[0]; DatanodeID[] newTargets = new DatanodeID[0]; ExtendedBlock lastBlock = new ExtendedBlock(); @@ -148,7 +149,6 @@ public class TestCommitBlockSynchronizat INodeFileUnderConstruction file = mock(INodeFileUnderConstruction.class); Block block = new Block(blockId, length, genStamp); FSNamesystem namesystemSpy = makeNameSystemSpy(block, file); - DatanodeDescriptor[] targets = new DatanodeDescriptor[0]; DatanodeID[] newTargets = new DatanodeID[0]; ExtendedBlock lastBlock = new ExtendedBlock(); Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java Tue Jul 30 07:56:23 2013 @@ -155,7 +155,7 @@ public class TestEditLog { INodeFileUnderConstruction inode = new INodeFileUnderConstruction( namesystem.allocateNewInodeId(), p, replication, blockSize, 0, "", "", null); - editLog.logOpenFile("/filename" + (startIndex + i), inode); + editLog.logOpenFile("/filename" + (startIndex + i), inode, false); editLog.logCloseFile("/filename" + (startIndex + i), inode); editLog.logSync(); } @@ -912,14 +912,14 @@ public class TestEditLog { log.setMetricsForTests(mockMetrics); for (int i = 0; i < 400; i++) { - log.logDelete(oneKB, 1L); + log.logDelete(oneKB, 1L, false); } // After ~400KB, we're still within the 512KB buffer size Mockito.verify(mockMetrics, Mockito.times(0)).addSync(Mockito.anyLong()); // After ~400KB more, we should have done an automatic sync for (int i = 0; i < 400; i++) { - log.logDelete(oneKB, 1L); + log.logDelete(oneKB, 1L, false); } Mockito.verify(mockMetrics, Mockito.times(1)).addSync(Mockito.anyLong()); Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestFSEditLogLoader.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestFSEditLogLoader.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestFSEditLogLoader.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestFSEditLogLoader.java Tue Jul 30 07:56:23 2013 @@ -292,7 +292,7 @@ public class TestFSEditLogLoader { long thisTxId = spyLog.getLastWrittenTxId() + 1; offsetToTxId.put(trueOffset, thisTxId); System.err.println("txid " + thisTxId + " at offset " + trueOffset); - spyLog.logDelete("path" + i, i); + spyLog.logDelete("path" + i, i, false); spyLog.logSync(); } } finally { Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeRecovery.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeRecovery.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeRecovery.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeRecovery.java Tue Jul 30 07:56:23 2013 @@ -30,8 +30,6 @@ import java.io.RandomAccessFile; import java.util.HashSet; import java.util.Set; -import junit.framework.Assert; - import org.apache.commons.io.FileUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -273,7 +271,7 @@ public class TestNameNodeRecovery { } public int getMaxOpSize() { - return 30; + return 36; } } Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java Tue Jul 30 07:56:23 2013 @@ -19,12 +19,17 @@ package org.apache.hadoop.hdfs.server.na +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + import java.io.IOException; import java.util.EnumSet; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.CreateFlag; -import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Options.Rename; import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.UnresolvedLinkException; @@ -32,19 +37,21 @@ import org.apache.hadoop.fs.permission.F import org.apache.hadoop.fs.permission.PermissionStatus; import org.apache.hadoop.hdfs.DFSConfigKeys; import org.apache.hadoop.hdfs.DFSTestUtil; +import org.apache.hadoop.hdfs.DistributedFileSystem; import org.apache.hadoop.hdfs.HdfsConfiguration; import org.apache.hadoop.hdfs.MiniDFSCluster; import org.apache.hadoop.hdfs.protocol.HdfsFileStatus; import org.apache.hadoop.hdfs.protocol.LocatedBlock; +import org.apache.hadoop.ipc.ClientId; import org.apache.hadoop.ipc.RPC.RpcKind; -import org.apache.hadoop.ipc.RetryCache; +import org.apache.hadoop.ipc.RetryCache.CacheEntry; import org.apache.hadoop.ipc.RpcConstants; import org.apache.hadoop.ipc.Server; import org.apache.hadoop.security.AccessControlException; -import org.apache.hadoop.util.StringUtils; +import org.apache.hadoop.util.LightWeightCache; import org.junit.After; import org.junit.Assert; -import org.junit.BeforeClass; +import org.junit.Before; import org.junit.Test; /** @@ -61,19 +68,20 @@ import org.junit.Test; * request, a new callId is generated using {@link #newCall()}. */ public class TestNamenodeRetryCache { - private static final byte[] CLIENT_ID = StringUtils.getUuidBytes(); + private static final byte[] CLIENT_ID = ClientId.getClientId(); private static MiniDFSCluster cluster; private static FSNamesystem namesystem; private static PermissionStatus perm = new PermissionStatus( "TestNamenodeRetryCache", null, FsPermission.getDefault()); - private static FileSystem filesystem; + private static DistributedFileSystem filesystem; private static int callId = 100; + private static Configuration conf = new HdfsConfiguration(); + private static final int BlockSize = 512; /** Start a cluster */ - @BeforeClass - public static void setup() throws Exception { - Configuration conf = new HdfsConfiguration(); - conf.set(DFSConfigKeys.DFS_BLOCK_SIZE_KEY, "512"); + @Before + public void setup() throws Exception { + conf.setLong(DFSConfigKeys.DFS_BLOCK_SIZE_KEY, BlockSize); conf.setBoolean(DFSConfigKeys.DFS_NAMENODE_ENABLE_RETRY_CACHE_KEY, true); cluster = new MiniDFSCluster.Builder(conf).build(); cluster.waitActive(); @@ -109,8 +117,8 @@ public class TestNamenodeRetryCache { } private void concatSetup(String file1, String file2) throws Exception { - DFSTestUtil.createFile(filesystem, new Path(file1), 512, (short)1, 0L); - DFSTestUtil.createFile(filesystem, new Path(file2), 512, (short)1, 0L); + DFSTestUtil.createFile(filesystem, new Path(file1), BlockSize, (short)1, 0L); + DFSTestUtil.createFile(filesystem, new Path(file2), BlockSize, (short)1, 0L); } /** @@ -192,19 +200,19 @@ public class TestNamenodeRetryCache { // Two retried calls succeed newCall(); HdfsFileStatus status = namesystem.startFile(src, perm, "holder", - "clientmachine", EnumSet.of(CreateFlag.CREATE), true, (short) 1, 512); + "clientmachine", EnumSet.of(CreateFlag.CREATE), true, (short) 1, BlockSize); Assert.assertEquals(status, namesystem.startFile(src, perm, "holder", "clientmachine", EnumSet.of(CreateFlag.CREATE), - true, (short) 1, 512)); + true, (short) 1, BlockSize)); Assert.assertEquals(status, namesystem.startFile(src, perm, "holder", "clientmachine", EnumSet.of(CreateFlag.CREATE), - true, (short) 1, 512)); + true, (short) 1, BlockSize)); // A non-retried call fails newCall(); try { namesystem.startFile(src, perm, "holder", "clientmachine", - EnumSet.of(CreateFlag.CREATE), true, (short) 1, 512); + EnumSet.of(CreateFlag.CREATE), true, (short) 1, BlockSize); Assert.fail("testCreate - expected exception is not thrown"); } catch (IOException e) { // expected @@ -352,4 +360,41 @@ public class TestNamenodeRetryCache { conf.setBoolean(DFSConfigKeys.DFS_NAMENODE_ENABLE_RETRY_CACHE_KEY, false); Assert.assertNull(FSNamesystem.initRetryCache(conf)); } + + /** + * After run a set of operations, restart NN and check if the retry cache has + * been rebuilt based on the editlog. + */ + @Test + public void testRetryCacheRebuild() throws Exception { + DFSTestUtil.runOperations(cluster, filesystem, conf, BlockSize, 0); + + LightWeightCache<CacheEntry, CacheEntry> cacheSet = + (LightWeightCache<CacheEntry, CacheEntry>) namesystem.getRetryCache().getCacheSet(); + assertEquals(14, cacheSet.size()); + + Map<CacheEntry, CacheEntry> oldEntries = + new HashMap<CacheEntry, CacheEntry>(); + Iterator<CacheEntry> iter = cacheSet.iterator(); + while (iter.hasNext()) { + CacheEntry entry = iter.next(); + oldEntries.put(entry, entry); + } + + // restart NameNode + cluster.restartNameNode(); + cluster.waitActive(); + namesystem = cluster.getNamesystem(); + + // check retry cache + assertTrue(namesystem.hasRetryCache()); + cacheSet = (LightWeightCache<CacheEntry, CacheEntry>) namesystem + .getRetryCache().getCacheSet(); + assertEquals(14, cacheSet.size()); + iter = cacheSet.iterator(); + while (iter.hasNext()) { + CacheEntry entry = iter.next(); + assertTrue(oldEntries.containsKey(entry)); + } + } } Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== Binary files - no diff available. Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml?rev=1508335&r1=1508334&r2=1508335&view=diff ============================================================================== --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml Tue Jul 30 07:56:23 2013 @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <EDITS> - <EDITS_VERSION>-46</EDITS_VERSION> + <EDITS_VERSION>-47</EDITS_VERSION> <RECORD> <OPCODE>OP_START_LOG_SEGMENT</OPCODE> <DATA> @@ -13,8 +13,8 @@ <TXID>2</TXID> <DELEGATION_KEY> <KEY_ID>1</KEY_ID> - <EXPIRY_DATE>1372798673941</EXPIRY_DATE> - <KEY>247c47b8bf6b89ec</KEY> + <EXPIRY_DATE>1375509063810</EXPIRY_DATE> + <KEY>4d47710649039b98</KEY> </DELEGATION_KEY> </DATA> </RECORD> @@ -24,8 +24,8 @@ <TXID>3</TXID> <DELEGATION_KEY> <KEY_ID>2</KEY_ID> - <EXPIRY_DATE>1372798673944</EXPIRY_DATE> - <KEY>ef1a35da6b4fc327</KEY> + <EXPIRY_DATE>1375509063812</EXPIRY_DATE> + <KEY>38cbb1d8fd90fcb2</KEY> </DELEGATION_KEY> </DATA> </RECORD> @@ -37,16 +37,18 @@ <INODEID>16386</INODEID> <PATH>/file_create_u\0001;F431</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107474972</MTIME> - <ATIME>1372107474972</ATIME> + <MTIME>1374817864805</MTIME> + <ATIME>1374817864805</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1834501254_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1676409172_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>8</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -57,13 +59,13 @@ <INODEID>0</INODEID> <PATH>/file_create_u\0001;F431</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107474983</MTIME> - <ATIME>1372107474972</ATIME> + <MTIME>1374817864816</MTIME> + <ATIME>1374817864805</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME></CLIENT_NAME> <CLIENT_MACHINE></CLIENT_MACHINE> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> @@ -76,7 +78,9 @@ <LENGTH>0</LENGTH> <SRC>/file_create_u\0001;F431</SRC> <DST>/file_moved</DST> - <TIMESTAMP>1372107474986</TIMESTAMP> + <TIMESTAMP>1374817864818</TIMESTAMP> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>10</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -85,7 +89,9 @@ <TXID>7</TXID> <LENGTH>0</LENGTH> <PATH>/file_moved</PATH> - <TIMESTAMP>1372107474989</TIMESTAMP> + <TIMESTAMP>1374817864822</TIMESTAMP> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>11</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -95,9 +101,9 @@ <LENGTH>0</LENGTH> <INODEID>16387</INODEID> <PATH>/directory_mkdir</PATH> - <TIMESTAMP>1372107474991</TIMESTAMP> + <TIMESTAMP>1374817864825</TIMESTAMP> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>493</MODE> </PERMISSION_STATUS> @@ -130,6 +136,8 @@ <TXID>12</TXID> <SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT> <SNAPSHOTNAME>snapshot1</SNAPSHOTNAME> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>16</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -139,6 +147,8 @@ <SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT> <SNAPSHOTOLDNAME>snapshot1</SNAPSHOTOLDNAME> <SNAPSHOTNEWNAME>snapshot2</SNAPSHOTNEWNAME> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>17</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -147,6 +157,8 @@ <TXID>14</TXID> <SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT> <SNAPSHOTNAME>snapshot2</SNAPSHOTNAME> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>18</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -157,16 +169,18 @@ <INODEID>16388</INODEID> <PATH>/file_create_u\0001;F431</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475007</MTIME> - <ATIME>1372107475007</ATIME> + <MTIME>1374817864846</MTIME> + <ATIME>1374817864846</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1834501254_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1676409172_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>19</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -177,13 +191,13 @@ <INODEID>0</INODEID> <PATH>/file_create_u\0001;F431</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475009</MTIME> - <ATIME>1372107475007</ATIME> + <MTIME>1374817864848</MTIME> + <ATIME>1374817864846</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME></CLIENT_NAME> <CLIENT_MACHINE></CLIENT_MACHINE> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> @@ -239,8 +253,10 @@ <LENGTH>0</LENGTH> <SRC>/file_create_u\0001;F431</SRC> <DST>/file_moved</DST> - <TIMESTAMP>1372107475019</TIMESTAMP> + <TIMESTAMP>1374817864860</TIMESTAMP> <OPTIONS>NONE</OPTIONS> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>26</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -251,16 +267,18 @@ <INODEID>16389</INODEID> <PATH>/file_concat_target</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475023</MTIME> - <ATIME>1372107475023</ATIME> + <MTIME>1374817864864</MTIME> + <ATIME>1374817864864</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1834501254_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1676409172_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>28</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -287,6 +305,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1001</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -318,6 +338,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1002</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -354,6 +376,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1003</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -364,8 +388,8 @@ <INODEID>0</INODEID> <PATH>/file_concat_target</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475091</MTIME> - <ATIME>1372107475023</ATIME> + <MTIME>1374817864927</MTIME> + <ATIME>1374817864864</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME></CLIENT_NAME> <CLIENT_MACHINE></CLIENT_MACHINE> @@ -385,7 +409,7 @@ <GENSTAMP>1003</GENSTAMP> </BLOCK> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> @@ -399,16 +423,18 @@ <INODEID>16390</INODEID> <PATH>/file_concat_0</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475093</MTIME> - <ATIME>1372107475093</ATIME> + <MTIME>1374817864929</MTIME> + <ATIME>1374817864929</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1834501254_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1676409172_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>41</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -435,6 +461,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1004</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -466,6 +494,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1005</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -502,6 +532,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1006</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -512,8 +544,8 @@ <INODEID>0</INODEID> <PATH>/file_concat_0</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475110</MTIME> - <ATIME>1372107475093</ATIME> + <MTIME>1374817864947</MTIME> + <ATIME>1374817864929</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME></CLIENT_NAME> <CLIENT_MACHINE></CLIENT_MACHINE> @@ -533,7 +565,7 @@ <GENSTAMP>1006</GENSTAMP> </BLOCK> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> @@ -547,16 +579,18 @@ <INODEID>16391</INODEID> <PATH>/file_concat_1</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475112</MTIME> - <ATIME>1372107475112</ATIME> + <MTIME>1374817864950</MTIME> + <ATIME>1374817864950</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1834501254_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1676409172_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>53</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -583,6 +617,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1007</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -614,6 +650,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1008</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -650,6 +688,8 @@ <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1009</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -660,8 +700,8 @@ <INODEID>0</INODEID> <PATH>/file_concat_1</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475131</MTIME> - <ATIME>1372107475112</ATIME> + <MTIME>1374817864966</MTIME> + <ATIME>1374817864950</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME></CLIENT_NAME> <CLIENT_MACHINE></CLIENT_MACHINE> @@ -681,7 +721,7 @@ <GENSTAMP>1009</GENSTAMP> </BLOCK> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> @@ -693,11 +733,13 @@ <TXID>56</TXID> <LENGTH>0</LENGTH> <TRG>/file_concat_target</TRG> - <TIMESTAMP>1372107475133</TIMESTAMP> + <TIMESTAMP>1374817864967</TIMESTAMP> <SOURCES> <SOURCE1>/file_concat_0</SOURCE1> <SOURCE2>/file_concat_1</SOURCE2> </SOURCES> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>64</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -708,13 +750,15 @@ <INODEID>16392</INODEID> <PATH>/file_symlink</PATH> <VALUE>/file_concat_target</VALUE> - <MTIME>1372107475137</MTIME> - <ATIME>1372107475137</ATIME> + <MTIME>1374817864971</MTIME> + <ATIME>1374817864971</ATIME> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>511</MODE> </PERMISSION_STATUS> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>65</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -724,14 +768,14 @@ <DELEGATION_TOKEN_IDENTIFIER> <KIND>HDFS_DELEGATION_TOKEN</KIND> <SEQUENCE_NUMBER>1</SEQUENCE_NUMBER> - <OWNER>aagarwal</OWNER> + <OWNER>jing</OWNER> <RENEWER>JobTracker</RENEWER> <REALUSER></REALUSER> - <ISSUE_DATE>1372107475140</ISSUE_DATE> - <MAX_DATE>1372712275140</MAX_DATE> + <ISSUE_DATE>1374817864974</ISSUE_DATE> + <MAX_DATE>1375422664974</MAX_DATE> <MASTER_KEY_ID>2</MASTER_KEY_ID> </DELEGATION_TOKEN_IDENTIFIER> - <EXPIRY_TIME>1372193875140</EXPIRY_TIME> + <EXPIRY_TIME>1374904264974</EXPIRY_TIME> </DATA> </RECORD> <RECORD> @@ -741,14 +785,14 @@ <DELEGATION_TOKEN_IDENTIFIER> <KIND>HDFS_DELEGATION_TOKEN</KIND> <SEQUENCE_NUMBER>1</SEQUENCE_NUMBER> - <OWNER>aagarwal</OWNER> + <OWNER>jing</OWNER> <RENEWER>JobTracker</RENEWER> <REALUSER></REALUSER> - <ISSUE_DATE>1372107475140</ISSUE_DATE> - <MAX_DATE>1372712275140</MAX_DATE> + <ISSUE_DATE>1374817864974</ISSUE_DATE> + <MAX_DATE>1375422664974</MAX_DATE> <MASTER_KEY_ID>2</MASTER_KEY_ID> </DELEGATION_TOKEN_IDENTIFIER> - <EXPIRY_TIME>1372193875208</EXPIRY_TIME> + <EXPIRY_TIME>1374904265012</EXPIRY_TIME> </DATA> </RECORD> <RECORD> @@ -758,11 +802,11 @@ <DELEGATION_TOKEN_IDENTIFIER> <KIND>HDFS_DELEGATION_TOKEN</KIND> <SEQUENCE_NUMBER>1</SEQUENCE_NUMBER> - <OWNER>aagarwal</OWNER> + <OWNER>jing</OWNER> <RENEWER>JobTracker</RENEWER> <REALUSER></REALUSER> - <ISSUE_DATE>1372107475140</ISSUE_DATE> - <MAX_DATE>1372712275140</MAX_DATE> + <ISSUE_DATE>1374817864974</ISSUE_DATE> + <MAX_DATE>1375422664974</MAX_DATE> <MASTER_KEY_ID>2</MASTER_KEY_ID> </DELEGATION_TOKEN_IDENTIFIER> </DATA> @@ -773,18 +817,20 @@ <TXID>61</TXID> <LENGTH>0</LENGTH> <INODEID>16393</INODEID> - <PATH>/written_file</PATH> + <PATH>/hard-lease-recovery-test</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107475214</MTIME> - <ATIME>1372107475214</ATIME> + <MTIME>1374817865017</MTIME> + <ATIME>1374817865017</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1834501254_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1676409172_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> + <RPC_CLIENTID>5245793a-984b-4264-8d7c-7890775547a0</RPC_CLIENTID> + <RPC_CALLID>69</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -805,178 +851,42 @@ <OPCODE>OP_UPDATE_BLOCKS</OPCODE> <DATA> <TXID>64</TXID> - <PATH>/written_file</PATH> + <PATH>/hard-lease-recovery-test</PATH> <BLOCK> <BLOCK_ID>1073741834</BLOCK_ID> <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1010</GENSTAMP> </BLOCK> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> - <OPCODE>OP_CLOSE</OPCODE> + <OPCODE>OP_UPDATE_BLOCKS</OPCODE> <DATA> <TXID>65</TXID> - <LENGTH>0</LENGTH> - <INODEID>0</INODEID> - <PATH>/written_file</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1372107475221</MTIME> - <ATIME>1372107475214</ATIME> - <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME></CLIENT_NAME> - <CLIENT_MACHINE></CLIENT_MACHINE> - <BLOCK> - <BLOCK_ID>1073741834</BLOCK_ID> - <NUM_BYTES>9</NUM_BYTES> - <GENSTAMP>1010</GENSTAMP> - </BLOCK> - <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> - <GROUPNAME>supergroup</GROUPNAME> - <MODE>420</MODE> - </PERMISSION_STATUS> - </DATA> - </RECORD> - <RECORD> - <OPCODE>OP_ADD</OPCODE> - <DATA> - <TXID>66</TXID> - <LENGTH>0</LENGTH> - <INODEID>16393</INODEID> - <PATH>/written_file</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1372107475221</MTIME> - <ATIME>1372107475214</ATIME> - <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1834501254_1</CLIENT_NAME> - <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> + <PATH>/hard-lease-recovery-test</PATH> <BLOCK> <BLOCK_ID>1073741834</BLOCK_ID> - <NUM_BYTES>9</NUM_BYTES> + <NUM_BYTES>0</NUM_BYTES> <GENSTAMP>1010</GENSTAMP> </BLOCK> - <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> - <GROUPNAME>supergroup</GROUPNAME> - <MODE>420</MODE> - </PERMISSION_STATUS> + <RPC_CLIENTID></RPC_CLIENTID> + <RPC_CALLID>-2</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_SET_GENSTAMP_V2</OPCODE> <DATA> - <TXID>67</TXID> + <TXID>66</TXID> <GENSTAMPV2>1011</GENSTAMPV2> </DATA> </RECORD> <RECORD> - <OPCODE>OP_UPDATE_BLOCKS</OPCODE> - <DATA> - <TXID>68</TXID> - <PATH>/written_file</PATH> - <BLOCK> - <BLOCK_ID>1073741834</BLOCK_ID> - <NUM_BYTES>9</NUM_BYTES> - <GENSTAMP>1011</GENSTAMP> - </BLOCK> - </DATA> - </RECORD> - <RECORD> - <OPCODE>OP_CLOSE</OPCODE> - <DATA> - <TXID>69</TXID> - <LENGTH>0</LENGTH> - <INODEID>0</INODEID> - <PATH>/written_file</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1372107475272</MTIME> - <ATIME>1372107475221</ATIME> - <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME></CLIENT_NAME> - <CLIENT_MACHINE></CLIENT_MACHINE> - <BLOCK> - <BLOCK_ID>1073741834</BLOCK_ID> - <NUM_BYTES>26</NUM_BYTES> - <GENSTAMP>1011</GENSTAMP> - </BLOCK> - <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> - <GROUPNAME>supergroup</GROUPNAME> - <MODE>420</MODE> - </PERMISSION_STATUS> - </DATA> - </RECORD> - <RECORD> - <OPCODE>OP_ADD</OPCODE> - <DATA> - <TXID>70</TXID> - <LENGTH>0</LENGTH> - <INODEID>16394</INODEID> - <PATH>/hard-lease-recovery-test</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1372107475275</MTIME> - <ATIME>1372107475275</ATIME> - <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_-1834501254_1</CLIENT_NAME> - <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> - <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> - <GROUPNAME>supergroup</GROUPNAME> - <MODE>420</MODE> - </PERMISSION_STATUS> - </DATA> - </RECORD> - <RECORD> - <OPCODE>OP_ALLOCATE_BLOCK_ID</OPCODE> - <DATA> - <TXID>71</TXID> - <BLOCK_ID>1073741835</BLOCK_ID> - </DATA> - </RECORD> - <RECORD> - <OPCODE>OP_SET_GENSTAMP_V2</OPCODE> - <DATA> - <TXID>72</TXID> - <GENSTAMPV2>1012</GENSTAMPV2> - </DATA> - </RECORD> - <RECORD> - <OPCODE>OP_UPDATE_BLOCKS</OPCODE> - <DATA> - <TXID>73</TXID> - <PATH>/hard-lease-recovery-test</PATH> - <BLOCK> - <BLOCK_ID>1073741835</BLOCK_ID> - <NUM_BYTES>0</NUM_BYTES> - <GENSTAMP>1012</GENSTAMP> - </BLOCK> - </DATA> - </RECORD> - <RECORD> - <OPCODE>OP_UPDATE_BLOCKS</OPCODE> - <DATA> - <TXID>74</TXID> - <PATH>/hard-lease-recovery-test</PATH> - <BLOCK> - <BLOCK_ID>1073741835</BLOCK_ID> - <NUM_BYTES>0</NUM_BYTES> - <GENSTAMP>1012</GENSTAMP> - </BLOCK> - </DATA> - </RECORD> - <RECORD> - <OPCODE>OP_SET_GENSTAMP_V2</OPCODE> - <DATA> - <TXID>75</TXID> - <GENSTAMPV2>1013</GENSTAMPV2> - </DATA> - </RECORD> - <RECORD> <OPCODE>OP_REASSIGN_LEASE</OPCODE> <DATA> - <TXID>76</TXID> - <LEASEHOLDER>DFSClient_NONMAPREDUCE_-1834501254_1</LEASEHOLDER> + <TXID>67</TXID> + <LEASEHOLDER>DFSClient_NONMAPREDUCE_-1676409172_1</LEASEHOLDER> <PATH>/hard-lease-recovery-test</PATH> <NEWHOLDER>HDFS_NameNode</NEWHOLDER> </DATA> @@ -984,23 +894,23 @@ <RECORD> <OPCODE>OP_CLOSE</OPCODE> <DATA> - <TXID>77</TXID> + <TXID>68</TXID> <LENGTH>0</LENGTH> <INODEID>0</INODEID> <PATH>/hard-lease-recovery-test</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1372107477870</MTIME> - <ATIME>1372107475275</ATIME> + <MTIME>1374817867688</MTIME> + <ATIME>1374817865017</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME></CLIENT_NAME> <CLIENT_MACHINE></CLIENT_MACHINE> <BLOCK> - <BLOCK_ID>1073741835</BLOCK_ID> + <BLOCK_ID>1073741834</BLOCK_ID> <NUM_BYTES>11</NUM_BYTES> - <GENSTAMP>1013</GENSTAMP> + <GENSTAMP>1011</GENSTAMP> </BLOCK> <PERMISSION_STATUS> - <USERNAME>aagarwal</USERNAME> + <USERNAME>jing</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> @@ -1009,7 +919,7 @@ <RECORD> <OPCODE>OP_END_LOG_SEGMENT</OPCODE> <DATA> - <TXID>78</TXID> + <TXID>69</TXID> </DATA> </RECORD> </EDITS>