HDFS-12840. Creating a file with non-default EC policy in a EC zone is not correctly serialized in the editlog. Contributed by Lei (Eddy) Xu.
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/67662e2a Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/67662e2a Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/67662e2a Branch: refs/heads/YARN-6592 Commit: 67662e2ac9e68f32b725c8118cf2be79a662fca5 Parents: 67b2661 Author: Lei Xu <[email protected]> Authored: Thu Dec 7 11:15:40 2017 -0800 Committer: Lei Xu <[email protected]> Committed: Thu Dec 7 11:15:40 2017 -0800 ---------------------------------------------------------------------- .../io/erasurecode/ErasureCodeConstants.java | 2 +- .../hdfs/server/namenode/FSDirWriteFileOp.java | 21 +- .../hadoop/hdfs/server/namenode/FSEditLog.java | 3 +- .../hdfs/server/namenode/FSEditLogLoader.java | 2 +- .../hdfs/server/namenode/FSEditLogOp.java | 26 + .../hadoop/hdfs/server/namenode/INodeFile.java | 14 +- .../org/apache/hadoop/hdfs/DFSTestUtil.java | 23 + .../TestDistributedFileSystemWithECFile.java | 55 ++ .../namenode/OfflineEditsViewerHelper.java | 4 +- .../server/namenode/TestNamenodeRetryCache.java | 14 +- .../namenode/ha/TestRetryCacheWithHA.java | 13 +- .../hadoop-hdfs/src/test/resources/editsStored | Bin 6753 -> 7909 bytes .../src/test/resources/editsStored.xml | 536 +++++++++++++------ 13 files changed, 531 insertions(+), 182 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ErasureCodeConstants.java ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ErasureCodeConstants.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ErasureCodeConstants.java index 73b8f56..2eac016 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ErasureCodeConstants.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/ErasureCodeConstants.java @@ -52,6 +52,6 @@ public final class ErasureCodeConstants { public static final byte MAX_POLICY_ID = Byte.MAX_VALUE; public static final byte USER_DEFINED_POLICY_START_ID = (byte) 64; - public static final byte REPLICATION_POLICY_ID = (byte) 63; + public static final byte REPLICATION_POLICY_ID = (byte) 0; public static final String REPLICATION_POLICY_NAME = REPLICATION_CODEC_NAME; } http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirWriteFileOp.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirWriteFileOp.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirWriteFileOp.java index b202212..c4041a3 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirWriteFileOp.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirWriteFileOp.java @@ -53,6 +53,7 @@ import org.apache.hadoop.hdfs.server.blockmanagement.DatanodeStorageInfo; import org.apache.hadoop.hdfs.server.common.HdfsServerConstants; import org.apache.hadoop.hdfs.server.namenode.FSDirectory.DirOp; import org.apache.hadoop.hdfs.server.namenode.snapshot.Snapshot; +import org.apache.hadoop.io.erasurecode.ErasureCodeConstants; import org.apache.hadoop.net.Node; import org.apache.hadoop.net.NodeBase; import org.apache.hadoop.util.ChunkedArrayList; @@ -415,22 +416,28 @@ class FSDirWriteFileOp { PermissionStatus permissions, List<AclEntry> aclEntries, List<XAttr> xAttrs, short replication, long modificationTime, long atime, long preferredBlockSize, boolean underConstruction, String clientName, - String clientMachine, byte storagePolicyId) { + String clientMachine, byte storagePolicyId, byte ecPolicyID) { final INodeFile newNode; Preconditions.checkNotNull(existing); assert fsd.hasWriteLock(); try { // check if the file has an EC policy - boolean isStriped = false; - ErasureCodingPolicy ecPolicy = FSDirErasureCodingOp. - unprotectedGetErasureCodingPolicy(fsd.getFSNamesystem(), existing); - if (ecPolicy != null) { - isStriped = true; + boolean isStriped = + ecPolicyID != ErasureCodeConstants.REPLICATION_POLICY_ID; + ErasureCodingPolicy ecPolicy = null; + if (isStriped) { + ecPolicy = fsd.getFSNamesystem().getErasureCodingPolicyManager() + .getByID(ecPolicyID); + if (ecPolicy == null) { + throw new IOException(String.format( + "Cannot find erasure coding policy for new file %s/%s, " + + "ecPolicyID=%d", + existing.getPath(), Arrays.toString(localName), ecPolicyID)); + } } final BlockType blockType = isStriped ? BlockType.STRIPED : BlockType.CONTIGUOUS; final Short replicationFactor = (!isStriped ? replication : null); - final Byte ecPolicyID = (isStriped ? ecPolicy.getId() : null); if (underConstruction) { newNode = newINodeFile(id, permissions, modificationTime, modificationTime, replicationFactor, ecPolicyID, preferredBlockSize, http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLog.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLog.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLog.java index 72e00ee..d6fb212 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLog.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLog.java @@ -815,7 +815,8 @@ public class FSEditLog implements LogsPurgeable { .setClientMachine( newNode.getFileUnderConstructionFeature().getClientMachine()) .setOverwrite(overwrite) - .setStoragePolicyId(newNode.getLocalStoragePolicyID()); + .setStoragePolicyId(newNode.getLocalStoragePolicyID()) + .setErasureCodingPolicyId(newNode.getErasureCodingPolicyID()); AclFeature f = newNode.getAclFeature(); if (f != null) { http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogLoader.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogLoader.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogLoader.java index a21b8ea..b0fe60a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogLoader.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogLoader.java @@ -385,7 +385,7 @@ public class FSEditLogLoader { addCloseOp.xAttrs, replication, addCloseOp.mtime, addCloseOp.atime, addCloseOp.blockSize, true, addCloseOp.clientName, addCloseOp.clientMachine, - addCloseOp.storagePolicyId); + addCloseOp.storagePolicyId, addCloseOp.erasureCodingPolicyId); assert newFile != null; iip = INodesInPath.replace(iip, iip.length() - 1, newFile); fsNamesys.leaseManager.addLease(addCloseOp.clientName, newFile.getId()); http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOp.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOp.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOp.java index 2dc9d33..c0daaf1 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOp.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOp.java @@ -127,6 +127,7 @@ import org.apache.hadoop.io.Writable; import org.apache.hadoop.io.WritableFactories; import org.apache.hadoop.io.WritableFactory; import org.apache.hadoop.io.erasurecode.ECSchema; +import org.apache.hadoop.io.erasurecode.ErasureCodeConstants; import org.apache.hadoop.ipc.ClientId; import org.apache.hadoop.ipc.RpcConstants; import org.apache.hadoop.security.token.delegation.DelegationKey; @@ -425,10 +426,12 @@ public abstract class FSEditLogOp { String clientMachine; boolean overwrite; byte storagePolicyId; + byte erasureCodingPolicyId; private AddCloseOp(FSEditLogOpCodes opCode) { super(opCode); storagePolicyId = HdfsConstants.BLOCK_STORAGE_POLICY_ID_UNSPECIFIED; + erasureCodingPolicyId = ErasureCodeConstants.REPLICATION_POLICY_ID; assert(opCode == OP_ADD || opCode == OP_CLOSE || opCode == OP_APPEND); } @@ -449,6 +452,7 @@ public abstract class FSEditLogOp { clientMachine = null; overwrite = false; storagePolicyId = 0; + erasureCodingPolicyId = ErasureCodeConstants.REPLICATION_POLICY_ID; } <T extends AddCloseOp> T setInodeId(long inodeId) { @@ -535,6 +539,11 @@ public abstract class FSEditLogOp { return (T)this; } + <T extends AddCloseOp> T setErasureCodingPolicyId(byte ecPolicyId) { + this.erasureCodingPolicyId = ecPolicyId; + return (T)this; + } + @Override public void writeFields(DataOutputStream out) throws IOException { FSImageSerialization.writeLong(inodeId, out); @@ -555,6 +564,7 @@ public abstract class FSEditLogOp { FSImageSerialization.writeString(clientMachine,out); FSImageSerialization.writeBoolean(overwrite, out); FSImageSerialization.writeByte(storagePolicyId, out); + FSImageSerialization.writeByte(erasureCodingPolicyId, out); // write clientId and callId writeRpcIds(rpcClientId, rpcCallId, out); } @@ -633,6 +643,14 @@ public abstract class FSEditLogOp { this.storagePolicyId = HdfsConstants.BLOCK_STORAGE_POLICY_ID_UNSPECIFIED; } + + if (NameNodeLayoutVersion.supports( + NameNodeLayoutVersion.Feature.ERASURE_CODING, logVersion)) { + this.erasureCodingPolicyId = FSImageSerialization.readByte(in); + } else { + this.erasureCodingPolicyId = + ErasureCodeConstants.REPLICATION_POLICY_ID; + } // read clientId and callId readRpcIds(in, logVersion); } else { @@ -695,6 +713,8 @@ public abstract class FSEditLogOp { } builder.append(", storagePolicyId="); builder.append(storagePolicyId); + builder.append(", erasureCodingPolicyId="); + builder.append(erasureCodingPolicyId); builder.append(", opCode="); builder.append(opCode); builder.append(", txid="); @@ -730,6 +750,8 @@ public abstract class FSEditLogOp { if (aclEntries != null) { appendAclEntriesToXml(contentHandler, aclEntries); } + XMLUtils.addSaxString(contentHandler, "ERASURE_CODING_POLICY_ID", + Byte.toString(erasureCodingPolicyId)); appendRpcIdsToXml(contentHandler, rpcClientId, rpcCallId); } } @@ -758,6 +780,10 @@ public abstract class FSEditLogOp { } this.permissions = permissionStatusFromXml(st); aclEntries = readAclEntriesFromXml(st); + if (st.hasChildren("ERASURE_CODING_POLICY_ID")) { + this.erasureCodingPolicyId = Byte.parseByte(st.getValue( + "ERASURE_CODING_POLICY_ID")); + } readRpcIdsFromXml(st); } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java index fcdb064..3f2fb33 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java @@ -56,6 +56,7 @@ import org.apache.hadoop.hdfs.util.LongBitFormat; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Preconditions; +import org.apache.hadoop.io.erasurecode.ErasureCodeConstants; import org.apache.hadoop.util.StringUtils; /** I-node for closed file. */ @@ -200,9 +201,10 @@ public class INodeFile extends INodeWithAdditionalFields // as the PolicyID can never be in negative. layoutRedundancy |= erasureCodingPolicyID; } else { - Preconditions.checkArgument(replication != null && - erasureCodingPolicyID == null); - Preconditions.checkArgument(replication >= 0 && + Preconditions.checkArgument(erasureCodingPolicyID == null || + erasureCodingPolicyID == + ErasureCodeConstants.REPLICATION_POLICY_ID); + Preconditions.checkArgument(replication != null && replication >= 0 && replication <= MAX_REDUNDANCY, "Invalid replication value " + replication); layoutRedundancy |= replication; @@ -588,10 +590,8 @@ public class INodeFile extends INodeWithAdditionalFields setStoragePolicyID(storagePolicyId); } - /** - * @return The ID of the erasure coding policy on the file. -1 represents no - * EC policy. + * @return The ID of the erasure coding policy on the file. */ @VisibleForTesting @Override @@ -599,7 +599,7 @@ public class INodeFile extends INodeWithAdditionalFields if (isStriped()) { return HeaderFormat.getECPolicyID(header); } - return -1; + return ErasureCodeConstants.REPLICATION_POLICY_ID; } /** http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java index 1048b0a..1411a7f 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/DFSTestUtil.java @@ -1510,6 +1510,29 @@ public class DFSTestUtil { // OP_REMOVE_ERASURE_CODING_POLICY filesystem.removeErasureCodingPolicy(newPolicy1.getName()); filesystem.removeErasureCodingPolicy(newPolicy2.getName()); + + // OP_ADD on erasure coding directory + Path ecDir = new Path("/ec"); + filesystem.mkdirs(ecDir); + final ErasureCodingPolicy defaultEcPolicy = + SystemErasureCodingPolicies.getByID( + SystemErasureCodingPolicies.RS_6_3_POLICY_ID); + final ErasureCodingPolicy ecPolicyRS32 = + SystemErasureCodingPolicies.getByID( + SystemErasureCodingPolicies.RS_3_2_POLICY_ID); + filesystem.enableErasureCodingPolicy(ecPolicyRS32.getName()); + filesystem.enableErasureCodingPolicy(defaultEcPolicy.getName()); + filesystem.setErasureCodingPolicy(ecDir, defaultEcPolicy.getName()); + + try (FSDataOutputStream out = filesystem.createFile( + new Path(ecDir, "replicated")).replicate().build()) { + out.write("replicated".getBytes()); + } + + try (FSDataOutputStream out = filesystem.createFile( + new Path(ecDir, "RS-3-2")).ecPolicyName(ecPolicyRS32.getName()).build()) { + out.write("RS-3-2".getBytes()); + } } public static void abortStream(DFSOutputStream out) throws IOException { http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDistributedFileSystemWithECFile.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDistributedFileSystemWithECFile.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDistributedFileSystemWithECFile.java index 14a2ec4..0a3010f 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDistributedFileSystemWithECFile.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDistributedFileSystemWithECFile.java @@ -19,11 +19,13 @@ package org.apache.hadoop.hdfs; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.BlockLocation; +import org.apache.hadoop.fs.FSDataOutputStream; import org.apache.hadoop.fs.FileContext; import org.apache.hadoop.fs.LocatedFileStatus; import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.RemoteIterator; import org.apache.hadoop.hdfs.protocol.ErasureCodingPolicy; +import org.apache.hadoop.hdfs.protocol.SystemErasureCodingPolicies; import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -32,6 +34,8 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; /** @@ -194,4 +198,55 @@ public class TestDistributedFileSystemWithECFile { assertTrue(lastBlock.getOffset() == blockGroupSize); assertTrue(lastBlock.getLength() == lastBlockSize); } + + @Test(timeout=60000) + public void testReplayEditLogsForReplicatedFile() throws Exception { + cluster.shutdown(); + + ErasureCodingPolicy rs63 = SystemErasureCodingPolicies.getByID( + SystemErasureCodingPolicies.RS_6_3_POLICY_ID + ); + ErasureCodingPolicy rs32 = SystemErasureCodingPolicies.getByID( + SystemErasureCodingPolicies.RS_3_2_POLICY_ID + ); + // Test RS(6,3) as default policy + int numDataNodes = rs63.getNumDataUnits() + rs63.getNumParityUnits(); + cluster = new MiniDFSCluster.Builder(conf) + .nnTopology(MiniDFSNNTopology.simpleHATopology()) + .numDataNodes(numDataNodes) + .build(); + + cluster.transitionToActive(0); + fs = cluster.getFileSystem(0); + fs.enableErasureCodingPolicy(rs63.getName()); + fs.enableErasureCodingPolicy(rs32.getName()); + + Path dir = new Path("/ec"); + fs.mkdirs(dir); + fs.setErasureCodingPolicy(dir, rs63.getName()); + + // Create an erasure coded file with the default policy. + Path ecFile = new Path(dir, "ecFile"); + createFile(ecFile.toString(), 10); + // Create a replicated file. + Path replicatedFile = new Path(dir, "replicated"); + try (FSDataOutputStream out = fs.createFile(replicatedFile) + .replicate().build()) { + out.write(123); + } + // Create an EC file with a different policy. + Path ecFile2 = new Path(dir, "RS-3-2"); + try (FSDataOutputStream out = fs.createFile(ecFile2) + .ecPolicyName(rs32.getName()).build()) { + out.write(456); + } + + cluster.transitionToStandby(0); + cluster.transitionToActive(1); + + fs = cluster.getFileSystem(1); + assertNull(fs.getErasureCodingPolicy(replicatedFile)); + assertEquals(rs63, fs.getErasureCodingPolicy(ecFile)); + assertEquals(rs32, fs.getErasureCodingPolicy(ecFile2)); + } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/OfflineEditsViewerHelper.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/OfflineEditsViewerHelper.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/OfflineEditsViewerHelper.java index b5ba108..d637af5 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/OfflineEditsViewerHelper.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/OfflineEditsViewerHelper.java @@ -98,8 +98,10 @@ public class OfflineEditsViewerHelper { config.setBoolean( DFSConfigKeys.DFS_NAMENODE_DELEGATION_TOKEN_ALWAYS_USE_KEY, true); config.setBoolean(DFSConfigKeys.DFS_NAMENODE_ACLS_ENABLED_KEY, true); + final int numDataNodes = 9; cluster = - new MiniDFSCluster.Builder(config).manageNameDfsDirs(false).build(); + new MiniDFSCluster.Builder(config).manageNameDfsDirs(false) + .numDataNodes(numDataNodes).build(); cluster.waitClusterUp(); } http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java index 42ff698..0995f13 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeRetryCache.java @@ -43,9 +43,11 @@ import org.apache.hadoop.hdfs.HdfsConfiguration; import org.apache.hadoop.hdfs.MiniDFSCluster; import org.apache.hadoop.hdfs.MiniDFSNNTopology; import org.apache.hadoop.hdfs.protocol.DatanodeID; +import org.apache.hadoop.hdfs.protocol.ErasureCodingPolicy; import org.apache.hadoop.hdfs.protocol.ExtendedBlock; import org.apache.hadoop.hdfs.protocol.HdfsFileStatus; import org.apache.hadoop.hdfs.protocol.LastBlockWithStatus; +import org.apache.hadoop.hdfs.protocol.SystemErasureCodingPolicies; import org.apache.hadoop.hdfs.server.protocol.NamenodeProtocols; import org.apache.hadoop.io.EnumSetWritable; import org.apache.hadoop.ipc.ClientId; @@ -79,6 +81,11 @@ import org.junit.Test; public class TestNamenodeRetryCache { private static final byte[] CLIENT_ID = ClientId.getClientId(); private static MiniDFSCluster cluster; + private static ErasureCodingPolicy defaultEcPolicy = + SystemErasureCodingPolicies.getByID( + SystemErasureCodingPolicies.RS_6_3_POLICY_ID); + private static int numDataNodes = defaultEcPolicy.getNumDataUnits() + + defaultEcPolicy.getNumParityUnits() + 1; private static NamenodeProtocols nnRpc; private static final FsPermission perm = FsPermission.getDefault(); private static DistributedFileSystem filesystem; @@ -93,7 +100,8 @@ public class TestNamenodeRetryCache { conf.setLong(DFSConfigKeys.DFS_BLOCK_SIZE_KEY, BlockSize); conf.setBoolean(DFSConfigKeys.DFS_NAMENODE_ENABLE_RETRY_CACHE_KEY, true); conf.setBoolean(DFSConfigKeys.DFS_NAMENODE_ACLS_ENABLED_KEY, true); - cluster = new MiniDFSCluster.Builder(conf).build(); + cluster = new MiniDFSCluster.Builder(conf) + .numDataNodes(numDataNodes).build(); cluster.waitActive(); nnRpc = cluster.getNameNode().getRpcServer(); filesystem = cluster.getFileSystem(); @@ -436,7 +444,7 @@ public class TestNamenodeRetryCache { LightWeightCache<CacheEntry, CacheEntry> cacheSet = (LightWeightCache<CacheEntry, CacheEntry>) namesystem.getRetryCache().getCacheSet(); - assertEquals("Retry cache size is wrong", 34, cacheSet.size()); + assertEquals("Retry cache size is wrong", 39, cacheSet.size()); Map<CacheEntry, CacheEntry> oldEntries = new HashMap<CacheEntry, CacheEntry>(); @@ -455,7 +463,7 @@ public class TestNamenodeRetryCache { assertTrue(namesystem.hasRetryCache()); cacheSet = (LightWeightCache<CacheEntry, CacheEntry>) namesystem .getRetryCache().getCacheSet(); - assertEquals("Retry cache size is wrong", 34, cacheSet.size()); + assertEquals("Retry cache size is wrong", 39, cacheSet.size()); iter = cacheSet.iterator(); while (iter.hasNext()) { CacheEntry entry = iter.next(); http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestRetryCacheWithHA.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestRetryCacheWithHA.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestRetryCacheWithHA.java index 1d114d6..43aaa92 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestRetryCacheWithHA.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestRetryCacheWithHA.java @@ -67,11 +67,13 @@ import org.apache.hadoop.hdfs.protocol.CachePoolEntry; import org.apache.hadoop.hdfs.protocol.CachePoolInfo; import org.apache.hadoop.hdfs.protocol.ClientProtocol; import org.apache.hadoop.hdfs.protocol.DatanodeInfo; +import org.apache.hadoop.hdfs.protocol.ErasureCodingPolicy; import org.apache.hadoop.hdfs.protocol.ExtendedBlock; import org.apache.hadoop.hdfs.protocol.HdfsFileStatus; import org.apache.hadoop.hdfs.protocol.LastBlockWithStatus; import org.apache.hadoop.hdfs.protocol.LocatedBlock; import org.apache.hadoop.hdfs.protocol.LocatedBlocks; +import org.apache.hadoop.hdfs.protocol.SystemErasureCodingPolicies; import org.apache.hadoop.hdfs.server.blockmanagement.BlockInfo; import org.apache.hadoop.hdfs.server.blockmanagement.DatanodeManager; import org.apache.hadoop.hdfs.server.namenode.FSNamesystem; @@ -93,7 +95,12 @@ public class TestRetryCacheWithHA { private static final Log LOG = LogFactory.getLog(TestRetryCacheWithHA.class); private static final int BlockSize = 1024; - private static final short DataNodes = 3; + private static ErasureCodingPolicy defaultEcPolicy = + SystemErasureCodingPolicies.getByID( + SystemErasureCodingPolicies.RS_6_3_POLICY_ID); + private static final short DataNodes = (short)( + defaultEcPolicy.getNumDataUnits() + + defaultEcPolicy.getNumParityUnits() + 1); private static final int CHECKTIMES = 10; private static final int ResponseSize = 3; @@ -166,7 +173,7 @@ public class TestRetryCacheWithHA { FSNamesystem fsn0 = cluster.getNamesystem(0); LightWeightCache<CacheEntry, CacheEntry> cacheSet = (LightWeightCache<CacheEntry, CacheEntry>) fsn0.getRetryCache().getCacheSet(); - assertEquals("Retry cache size is wrong", 34, cacheSet.size()); + assertEquals("Retry cache size is wrong", 39, cacheSet.size()); Map<CacheEntry, CacheEntry> oldEntries = new HashMap<CacheEntry, CacheEntry>(); @@ -187,7 +194,7 @@ public class TestRetryCacheWithHA { FSNamesystem fsn1 = cluster.getNamesystem(1); cacheSet = (LightWeightCache<CacheEntry, CacheEntry>) fsn1 .getRetryCache().getCacheSet(); - assertEquals("Retry cache size is wrong", 34, cacheSet.size()); + assertEquals("Retry cache size is wrong", 39, cacheSet.size()); iter = cacheSet.iterator(); while (iter.hasNext()) { CacheEntry entry = iter.next(); http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored b/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored index 3f2817a..a0ae78e 100644 Binary files a/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored and b/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored differ http://git-wip-us.apache.org/repos/asf/hadoop/blob/67662e2a/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml b/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml index 2a57c73..7e1881c 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml @@ -13,8 +13,8 @@ <TXID>2</TXID> <DELEGATION_KEY> <KEY_ID>1</KEY_ID> - <EXPIRY_DATE>1512000829976</EXPIRY_DATE> - <KEY>e7457bcc6ab95a84</KEY> + <EXPIRY_DATE>1513298395825</EXPIRY_DATE> + <KEY>ddb3d2c37b57926a</KEY> </DELEGATION_KEY> </DATA> </RECORD> @@ -24,8 +24,8 @@ <TXID>3</TXID> <DELEGATION_KEY> <KEY_ID>2</KEY_ID> - <EXPIRY_DATE>1512000829980</EXPIRY_DATE> - <KEY>07cc38caf6c47bb4</KEY> + <EXPIRY_DATE>1513298395827</EXPIRY_DATE> + <KEY>57acfb80c8b539fa</KEY> </DELEGATION_KEY> </DATA> </RECORD> @@ -36,11 +36,11 @@ <LENGTH>0</LENGTH> <INODEID>16386</INODEID> <PATH>/file_create</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1511309632199</MTIME> - <ATIME>1511309632199</ATIME> + <REPLICATION>3</REPLICATION> + <MTIME>1512607197452</MTIME> + <ATIME>1512607197452</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <OVERWRITE>true</OVERWRITE> <PERMISSION_STATUS> @@ -48,8 +48,9 @@ <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>5</RPC_CALLID> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>35</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -59,9 +60,9 @@ <LENGTH>0</LENGTH> <INODEID>0</INODEID> <PATH>/file_create</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1511309632248</MTIME> - <ATIME>1511309632199</ATIME> + <REPLICATION>3</REPLICATION> + <MTIME>1512607197500</MTIME> + <ATIME>1512607197452</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -78,11 +79,11 @@ <DATA> <TXID>6</TXID> <PATH>/file_create</PATH> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <NEWBLOCK>false</NEWBLOCK> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>7</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>37</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -92,9 +93,9 @@ <LENGTH>0</LENGTH> <INODEID>0</INODEID> <PATH>/file_create</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1511309632263</MTIME> - <ATIME>1511309632199</ATIME> + <REPLICATION>3</REPLICATION> + <MTIME>1512607197516</MTIME> + <ATIME>1512607197452</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -114,10 +115,10 @@ <INODEID>16387</INODEID> <PATH>/update_blocks</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632266</MTIME> - <ATIME>1511309632266</ATIME> + <MTIME>1512607197519</MTIME> + <ATIME>1512607197519</ATIME> <BLOCKSIZE>4096</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <OVERWRITE>true</OVERWRITE> <PERMISSION_STATUS> @@ -125,8 +126,9 @@ <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>9</RPC_CALLID> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>39</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -188,8 +190,8 @@ <INODEID>0</INODEID> <PATH>/update_blocks</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632454</MTIME> - <ATIME>1511309632266</ATIME> + <MTIME>1512607197657</MTIME> + <ATIME>1512607197519</ATIME> <BLOCKSIZE>4096</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -216,9 +218,9 @@ <LENGTH>0</LENGTH> <SRC>/file_create</SRC> <DST>/file_moved</DST> - <TIMESTAMP>1511309632467</TIMESTAMP> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>17</RPC_CALLID> + <TIMESTAMP>1512607197671</TIMESTAMP> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>47</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -227,9 +229,9 @@ <TXID>17</TXID> <LENGTH>0</LENGTH> <PATH>/file_moved</PATH> - <TIMESTAMP>1511309632480</TIMESTAMP> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>19</RPC_CALLID> + <TIMESTAMP>1512607197680</TIMESTAMP> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>49</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -239,7 +241,7 @@ <LENGTH>0</LENGTH> <INODEID>16388</INODEID> <PATH>/directory_mkdir</PATH> - <TIMESTAMP>1511309632488</TIMESTAMP> + <TIMESTAMP>1512607197690</TIMESTAMP> <PERMISSION_STATUS> <USERNAME>lei</USERNAME> <GROUPNAME>supergroup</GROUPNAME> @@ -274,8 +276,8 @@ <TXID>22</TXID> <SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT> <SNAPSHOTNAME>snapshot1</SNAPSHOTNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>24</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>54</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -285,8 +287,8 @@ <SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT> <SNAPSHOTOLDNAME>snapshot1</SNAPSHOTOLDNAME> <SNAPSHOTNEWNAME>snapshot2</SNAPSHOTNEWNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>25</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>55</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -295,8 +297,8 @@ <TXID>24</TXID> <SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT> <SNAPSHOTNAME>snapshot2</SNAPSHOTNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>26</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>56</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -306,11 +308,11 @@ <LENGTH>0</LENGTH> <INODEID>16389</INODEID> <PATH>/file_create</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1511309632528</MTIME> - <ATIME>1511309632528</ATIME> + <REPLICATION>3</REPLICATION> + <MTIME>1512607197723</MTIME> + <ATIME>1512607197723</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <OVERWRITE>true</OVERWRITE> <PERMISSION_STATUS> @@ -318,8 +320,9 @@ <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>27</RPC_CALLID> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>57</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -329,9 +332,9 @@ <LENGTH>0</LENGTH> <INODEID>0</INODEID> <PATH>/file_create</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1511309632530</MTIME> - <ATIME>1511309632528</ATIME> + <REPLICATION>3</REPLICATION> + <MTIME>1512607197726</MTIME> + <ATIME>1512607197723</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -402,10 +405,10 @@ <LENGTH>0</LENGTH> <SRC>/file_create</SRC> <DST>/file_moved</DST> - <TIMESTAMP>1511309632561</TIMESTAMP> + <TIMESTAMP>1512607197754</TIMESTAMP> <OPTIONS>TO_TRASH</OPTIONS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>35</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>65</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -416,10 +419,10 @@ <INODEID>16390</INODEID> <PATH>/file_concat_target</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632566</MTIME> - <ATIME>1511309632566</ATIME> + <MTIME>1512607197759</MTIME> + <ATIME>1512607197759</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <OVERWRITE>true</OVERWRITE> <PERMISSION_STATUS> @@ -427,8 +430,9 @@ <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>37</RPC_CALLID> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>67</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -533,8 +537,8 @@ <INODEID>0</INODEID> <PATH>/file_concat_target</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632593</MTIME> - <ATIME>1511309632566</ATIME> + <MTIME>1512607197800</MTIME> + <ATIME>1512607197759</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -569,10 +573,10 @@ <INODEID>16391</INODEID> <PATH>/file_concat_0</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632596</MTIME> - <ATIME>1511309632596</ATIME> + <MTIME>1512607197803</MTIME> + <ATIME>1512607197803</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <OVERWRITE>true</OVERWRITE> <PERMISSION_STATUS> @@ -580,8 +584,9 @@ <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>46</RPC_CALLID> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>76</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -686,8 +691,8 @@ <INODEID>0</INODEID> <PATH>/file_concat_0</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632618</MTIME> - <ATIME>1511309632596</ATIME> + <MTIME>1512607197837</MTIME> + <ATIME>1512607197803</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -722,10 +727,10 @@ <INODEID>16392</INODEID> <PATH>/file_concat_1</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632620</MTIME> - <ATIME>1511309632620</ATIME> + <MTIME>1512607197839</MTIME> + <ATIME>1512607197839</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <OVERWRITE>true</OVERWRITE> <PERMISSION_STATUS> @@ -733,8 +738,9 @@ <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>55</RPC_CALLID> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>85</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -839,8 +845,8 @@ <INODEID>0</INODEID> <PATH>/file_concat_1</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632643</MTIME> - <ATIME>1511309632620</ATIME> + <MTIME>1512607197878</MTIME> + <ATIME>1512607197839</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -873,13 +879,13 @@ <TXID>67</TXID> <LENGTH>0</LENGTH> <TRG>/file_concat_target</TRG> - <TIMESTAMP>1511309632648</TIMESTAMP> + <TIMESTAMP>1512607197882</TIMESTAMP> <SOURCES> <SOURCE1>/file_concat_0</SOURCE1> <SOURCE2>/file_concat_1</SOURCE2> </SOURCES> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>63</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>93</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -890,10 +896,10 @@ <INODEID>16393</INODEID> <PATH>/file_create</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632651</MTIME> - <ATIME>1511309632651</ATIME> + <MTIME>1512607197885</MTIME> + <ATIME>1512607197885</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <OVERWRITE>true</OVERWRITE> <PERMISSION_STATUS> @@ -901,8 +907,9 @@ <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>65</RPC_CALLID> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>95</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -974,8 +981,8 @@ <INODEID>0</INODEID> <PATH>/file_create</PATH> <REPLICATION>1</REPLICATION> - <MTIME>1511309632667</MTIME> - <ATIME>1511309632651</ATIME> + <MTIME>1512607197909</MTIME> + <ATIME>1512607197885</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -1002,10 +1009,10 @@ <DATA> <TXID>76</TXID> <SRC>/file_create</SRC> - <CLIENTNAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENTNAME> + <CLIENTNAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENTNAME> <CLIENTMACHINE>127.0.0.1</CLIENTMACHINE> <NEWLENGTH>512</NEWLENGTH> - <TIMESTAMP>1511309632671</TIMESTAMP> + <TIMESTAMP>1512607197912</TIMESTAMP> </DATA> </RECORD> <RECORD> @@ -1016,15 +1023,15 @@ <INODEID>16394</INODEID> <PATH>/file_symlink</PATH> <VALUE>/file_concat_target</VALUE> - <MTIME>1511309632686</MTIME> - <ATIME>1511309632686</ATIME> + <MTIME>1512607197921</MTIME> + <ATIME>1512607197921</ATIME> <PERMISSION_STATUS> <USERNAME>lei</USERNAME> <GROUPNAME>supergroup</GROUPNAME> <MODE>511</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>72</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>102</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -1034,11 +1041,11 @@ <LENGTH>0</LENGTH> <INODEID>16395</INODEID> <PATH>/hard-lease-recovery-test</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1511309632689</MTIME> - <ATIME>1511309632689</ATIME> + <REPLICATION>3</REPLICATION> + <MTIME>1512607197925</MTIME> + <ATIME>1512607197925</ATIME> <BLOCKSIZE>512</BLOCKSIZE> - <CLIENT_NAME>DFSClient_NONMAPREDUCE_2134933941_1</CLIENT_NAME> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> <OVERWRITE>true</OVERWRITE> <PERMISSION_STATUS> @@ -1046,8 +1053,9 @@ <GROUPNAME>supergroup</GROUPNAME> <MODE>420</MODE> </PERMISSION_STATUS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>73</RPC_CALLID> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>103</RPC_CALLID> </DATA> </RECORD> <RECORD> @@ -1103,21 +1111,30 @@ <OPCODE>OP_REASSIGN_LEASE</OPCODE> <DATA> <TXID>84</TXID> - <LEASEHOLDER>DFSClient_NONMAPREDUCE_2134933941_1</LEASEHOLDER> + <LEASEHOLDER>DFSClient_NONMAPREDUCE_-923924783_1</LEASEHOLDER> <PATH>/hard-lease-recovery-test</PATH> - <NEWHOLDER>HDFS_NameNode-2017-11-21 16:13:54,700-0800</NEWHOLDER> + <NEWHOLDER>HDFS_NameNode-2017-12-06 16:39:59,951-0800</NEWHOLDER> </DATA> </RECORD> <RECORD> - <OPCODE>OP_CLOSE</OPCODE> + <OPCODE>OP_REASSIGN_LEASE</OPCODE> <DATA> <TXID>85</TXID> + <LEASEHOLDER>HDFS_NameNode-2017-12-06 16:39:59,951-0800</LEASEHOLDER> + <PATH>/hard-lease-recovery-test</PATH> + <NEWHOLDER>HDFS_NameNode-2017-12-06 16:40:01,959-0800</NEWHOLDER> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_CLOSE</OPCODE> + <DATA> + <TXID>86</TXID> <LENGTH>0</LENGTH> <INODEID>0</INODEID> <PATH>/hard-lease-recovery-test</PATH> - <REPLICATION>1</REPLICATION> - <MTIME>1511309634880</MTIME> - <ATIME>1511309632689</ATIME> + <REPLICATION>3</REPLICATION> + <MTIME>1512607202974</MTIME> + <ATIME>1512607197925</ATIME> <BLOCKSIZE>512</BLOCKSIZE> <CLIENT_NAME/> <CLIENT_MACHINE/> @@ -1137,7 +1154,7 @@ <RECORD> <OPCODE>OP_ADD_CACHE_POOL</OPCODE> <DATA> - <TXID>86</TXID> + <TXID>87</TXID> <POOLNAME>pool1</POOLNAME> <OWNERNAME>lei</OWNERNAME> <GROUPNAME>staff</GROUPNAME> @@ -1145,65 +1162,65 @@ <LIMIT>9223372036854775807</LIMIT> <MAXRELATIVEEXPIRY>2305843009213693951</MAXRELATIVEEXPIRY> <DEFAULTREPLICATION>1</DEFAULTREPLICATION> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>80</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>138</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_MODIFY_CACHE_POOL</OPCODE> <DATA> - <TXID>87</TXID> + <TXID>88</TXID> <POOLNAME>pool1</POOLNAME> <LIMIT>99</LIMIT> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>81</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>139</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_ADD_CACHE_DIRECTIVE</OPCODE> <DATA> - <TXID>88</TXID> + <TXID>89</TXID> <ID>1</ID> <PATH>/path</PATH> <REPLICATION>1</REPLICATION> <POOL>pool1</POOL> - <EXPIRATION>2305844520523329692</EXPIRATION> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>82</RPC_CALLID> + <EXPIRATION>2305844521820897941</EXPIRATION> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>140</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_MODIFY_CACHE_DIRECTIVE</OPCODE> <DATA> - <TXID>89</TXID> + <TXID>90</TXID> <ID>1</ID> <REPLICATION>2</REPLICATION> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>83</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>141</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_REMOVE_CACHE_DIRECTIVE</OPCODE> <DATA> - <TXID>90</TXID> + <TXID>91</TXID> <ID>1</ID> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>84</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>142</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_REMOVE_CACHE_POOL</OPCODE> <DATA> - <TXID>91</TXID> + <TXID>92</TXID> <POOLNAME>pool1</POOLNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>85</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>143</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_SET_ACL</OPCODE> <DATA> - <TXID>92</TXID> + <TXID>93</TXID> <SRC>/file_concat_target</SRC> <ENTRY> <SCOPE>ACCESS</SCOPE> @@ -1236,61 +1253,61 @@ <RECORD> <OPCODE>OP_SET_XATTR</OPCODE> <DATA> - <TXID>93</TXID> + <TXID>94</TXID> <SRC>/file_concat_target</SRC> <XATTR> <NAMESPACE>USER</NAMESPACE> <NAME>a1</NAME> <VALUE>0x313233</VALUE> </XATTR> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>87</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>145</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_SET_XATTR</OPCODE> <DATA> - <TXID>94</TXID> + <TXID>95</TXID> <SRC>/file_concat_target</SRC> <XATTR> <NAMESPACE>USER</NAMESPACE> <NAME>a2</NAME> <VALUE>0x373839</VALUE> </XATTR> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>88</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>146</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_REMOVE_XATTR</OPCODE> <DATA> - <TXID>95</TXID> + <TXID>96</TXID> <SRC>/file_concat_target</SRC> <XATTR> <NAMESPACE>USER</NAMESPACE> <NAME>a2</NAME> </XATTR> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>89</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>147</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_ADD_ERASURE_CODING_POLICY</OPCODE> <DATA> - <TXID>96</TXID> + <TXID>97</TXID> <CODEC>rs</CODEC> <DATAUNITS>3</DATAUNITS> <PARITYUNITS>2</PARITYUNITS> <CELLSIZE>8192</CELLSIZE> <EXTRAOPTIONS>0</EXTRAOPTIONS> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>90</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>148</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_ADD_ERASURE_CODING_POLICY</OPCODE> <DATA> - <TXID>97</TXID> + <TXID>98</TXID> <CODEC>rs</CODEC> <DATAUNITS>6</DATAUNITS> <PARITYUNITS>10</PARITYUNITS> @@ -1300,82 +1317,285 @@ <KEY>dummyKey</KEY> <VALUE>dummyValue</VALUE> </EXTRAOPTION> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>91</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>149</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_ENABLE_ERASURE_CODING_POLICY</OPCODE> <DATA> - <TXID>98</TXID> + <TXID>99</TXID> <POLICYNAME>RS-3-2-8k</POLICYNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>92</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>150</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_ENABLE_ERASURE_CODING_POLICY</OPCODE> <DATA> - <TXID>99</TXID> + <TXID>100</TXID> <POLICYNAME>RS-6-10-4k</POLICYNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>93</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>151</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_DISABLE_ERASURE_CODING_POLICY</OPCODE> <DATA> - <TXID>100</TXID> + <TXID>101</TXID> <POLICYNAME>RS-3-2-8k</POLICYNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>94</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>152</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_DISABLE_ERASURE_CODING_POLICY</OPCODE> <DATA> - <TXID>101</TXID> + <TXID>102</TXID> <POLICYNAME>RS-6-10-4k</POLICYNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>95</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>153</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_REMOVE_ERASURE_CODING_POLICY</OPCODE> <DATA> - <TXID>102</TXID> + <TXID>103</TXID> <POLICYNAME>RS-3-2-8k</POLICYNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>96</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>154</RPC_CALLID> </DATA> </RECORD> <RECORD> <OPCODE>OP_REMOVE_ERASURE_CODING_POLICY</OPCODE> <DATA> - <TXID>103</TXID> + <TXID>104</TXID> <POLICYNAME>RS-6-10-4k</POLICYNAME> - <RPC_CLIENTID>a4dc081c-6d6f-42d6-af5b-d260228f1aad</RPC_CLIENTID> - <RPC_CALLID>97</RPC_CALLID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>155</RPC_CALLID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_MKDIR</OPCODE> + <DATA> + <TXID>105</TXID> + <LENGTH>0</LENGTH> + <INODEID>16396</INODEID> + <PATH>/ec</PATH> + <TIMESTAMP>1512607204077</TIMESTAMP> + <PERMISSION_STATUS> + <USERNAME>lei</USERNAME> + <GROUPNAME>supergroup</GROUPNAME> + <MODE>493</MODE> + </PERMISSION_STATUS> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_ENABLE_ERASURE_CODING_POLICY</OPCODE> + <DATA> + <TXID>106</TXID> + <POLICYNAME>RS-3-2-1024k</POLICYNAME> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>157</RPC_CALLID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_ENABLE_ERASURE_CODING_POLICY</OPCODE> + <DATA> + <TXID>107</TXID> + <POLICYNAME>RS-6-3-1024k</POLICYNAME> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>158</RPC_CALLID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_SET_XATTR</OPCODE> + <DATA> + <TXID>108</TXID> + <SRC>/ec</SRC> + <XATTR> + <NAMESPACE>SYSTEM</NAMESPACE> + <NAME>hdfs.erasurecoding.policy</NAME> + <VALUE>0x0000000c52532d362d332d313032346b</VALUE> + </XATTR> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>159</RPC_CALLID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_ADD</OPCODE> + <DATA> + <TXID>109</TXID> + <LENGTH>0</LENGTH> + <INODEID>16397</INODEID> + <PATH>/ec/replicated</PATH> + <REPLICATION>3</REPLICATION> + <MTIME>1512607204088</MTIME> + <ATIME>1512607204088</ATIME> + <BLOCKSIZE>512</BLOCKSIZE> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> + <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> + <OVERWRITE>true</OVERWRITE> + <PERMISSION_STATUS> + <USERNAME>lei</USERNAME> + <GROUPNAME>supergroup</GROUPNAME> + <MODE>420</MODE> + </PERMISSION_STATUS> + <ERASURE_CODING_POLICY_ID>0</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>160</RPC_CALLID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_ALLOCATE_BLOCK_ID</OPCODE> + <DATA> + <TXID>110</TXID> + <BLOCK_ID>1073741838</BLOCK_ID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_SET_GENSTAMP_V2</OPCODE> + <DATA> + <TXID>111</TXID> + <GENSTAMPV2>1015</GENSTAMPV2> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_ADD_BLOCK</OPCODE> + <DATA> + <TXID>112</TXID> + <PATH>/ec/replicated</PATH> + <BLOCK> + <BLOCK_ID>1073741838</BLOCK_ID> + <NUM_BYTES>0</NUM_BYTES> + <GENSTAMP>1015</GENSTAMP> + </BLOCK> + <RPC_CLIENTID/> + <RPC_CALLID>-2</RPC_CALLID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_CLOSE</OPCODE> + <DATA> + <TXID>113</TXID> + <LENGTH>0</LENGTH> + <INODEID>0</INODEID> + <PATH>/ec/replicated</PATH> + <REPLICATION>3</REPLICATION> + <MTIME>1512607204118</MTIME> + <ATIME>1512607204088</ATIME> + <BLOCKSIZE>512</BLOCKSIZE> + <CLIENT_NAME/> + <CLIENT_MACHINE/> + <OVERWRITE>false</OVERWRITE> + <BLOCK> + <BLOCK_ID>1073741838</BLOCK_ID> + <NUM_BYTES>10</NUM_BYTES> + <GENSTAMP>1015</GENSTAMP> + </BLOCK> + <PERMISSION_STATUS> + <USERNAME>lei</USERNAME> + <GROUPNAME>supergroup</GROUPNAME> + <MODE>420</MODE> + </PERMISSION_STATUS> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_ADD</OPCODE> + <DATA> + <TXID>114</TXID> + <LENGTH>0</LENGTH> + <INODEID>16398</INODEID> + <PATH>/ec/RS-3-2</PATH> + <REPLICATION>1</REPLICATION> + <MTIME>1512607204120</MTIME> + <ATIME>1512607204120</ATIME> + <BLOCKSIZE>512</BLOCKSIZE> + <CLIENT_NAME>DFSClient_NONMAPREDUCE_-923924783_1</CLIENT_NAME> + <CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE> + <OVERWRITE>true</OVERWRITE> + <PERMISSION_STATUS> + <USERNAME>lei</USERNAME> + <GROUPNAME>supergroup</GROUPNAME> + <MODE>420</MODE> + </PERMISSION_STATUS> + <ERASURE_CODING_POLICY_ID>2</ERASURE_CODING_POLICY_ID> + <RPC_CLIENTID>cab1aa2d-e08a-4d2f-8216-76e167eccd94</RPC_CLIENTID> + <RPC_CALLID>166</RPC_CALLID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_ALLOCATE_BLOCK_ID</OPCODE> + <DATA> + <TXID>115</TXID> + <BLOCK_ID>-9223372036854775792</BLOCK_ID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_SET_GENSTAMP_V2</OPCODE> + <DATA> + <TXID>116</TXID> + <GENSTAMPV2>1016</GENSTAMPV2> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_ADD_BLOCK</OPCODE> + <DATA> + <TXID>117</TXID> + <PATH>/ec/RS-3-2</PATH> + <BLOCK> + <BLOCK_ID>-9223372036854775792</BLOCK_ID> + <NUM_BYTES>0</NUM_BYTES> + <GENSTAMP>1016</GENSTAMP> + </BLOCK> + <RPC_CLIENTID/> + <RPC_CALLID>-2</RPC_CALLID> + </DATA> + </RECORD> + <RECORD> + <OPCODE>OP_CLOSE</OPCODE> + <DATA> + <TXID>118</TXID> + <LENGTH>0</LENGTH> + <INODEID>0</INODEID> + <PATH>/ec/RS-3-2</PATH> + <REPLICATION>1</REPLICATION> + <MTIME>1512607204229</MTIME> + <ATIME>1512607204120</ATIME> + <BLOCKSIZE>512</BLOCKSIZE> + <CLIENT_NAME/> + <CLIENT_MACHINE/> + <OVERWRITE>false</OVERWRITE> + <BLOCK> + <BLOCK_ID>-9223372036854775792</BLOCK_ID> + <NUM_BYTES>6</NUM_BYTES> + <GENSTAMP>1016</GENSTAMP> + </BLOCK> + <PERMISSION_STATUS> + <USERNAME>lei</USERNAME> + <GROUPNAME>supergroup</GROUPNAME> + <MODE>420</MODE> + </PERMISSION_STATUS> </DATA> </RECORD> <RECORD> <OPCODE>OP_ROLLING_UPGRADE_START</OPCODE> <DATA> - <TXID>104</TXID> - <STARTTIME>1511309635904</STARTTIME> + <TXID>119</TXID> + <STARTTIME>1512607204230</STARTTIME> </DATA> </RECORD> <RECORD> <OPCODE>OP_ROLLING_UPGRADE_FINALIZE</OPCODE> <DATA> - <TXID>105</TXID> - <FINALIZETIME>1511309635904</FINALIZETIME> + <TXID>120</TXID> + <FINALIZETIME>1512607204233</FINALIZETIME> </DATA> </RECORD> <RECORD> <OPCODE>OP_END_LOG_SEGMENT</OPCODE> <DATA> - <TXID>106</TXID> + <TXID>121</TXID> </DATA> </RECORD> </EDITS> --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
