You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-commits@hadoop.apache.org by vi...@apache.org on 2014/01/16 19:35:21 UTC
svn commit: r1558872 - in
/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs: ./
src/main/java/ src/main/java/org/apache/hadoop/hdfs/protocol/
src/main/java/org/apache/hadoop/hdfs/security/token/delegation/
src/main/java/org/apache/hadoop...
Author: vinodkv
Date: Thu Jan 16 18:35:19 2014
New Revision: 1558872
URL: http://svn.apache.org/r1558872
Log:
YARN-321. Forwarding YARN-321 branch to latest trunk.
Modified:
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/ (props changed)
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/ (props changed)
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/LayoutVersion.java
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/security/token/delegation/DelegationTokenSecretManager.java
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/CacheManager.java
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOpCodes.java
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImageFormat.java
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/ImageLoaderCurrent.java
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored
hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml
Propchange: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/
------------------------------------------------------------------------------
Merged /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs:r1558558-1558871
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Thu Jan 16 18:35:19 2014
@@ -478,6 +478,16 @@ Trunk (Unreleased)
HDFS-5726. Fix compilation error in AbstractINodeDiff for JDK7. (jing9)
+ HDFS-5768. Consolidate the serialization code in DelegationTokenSecretManager
+ (Haohui Mai via brandonli)
+
+ HDFS-5775. Consolidate the code for serialization in CacheManager
+ (Haohui Mai via brandonli)
+
+ HDFS-5704. Change OP_UPDATE_BLOCKS with a new OP_ADD_BLOCK. (jing9)
+
+ HDFS-5777. Update LayoutVersion for the new editlog op OP_ADD_BLOCK. (jing9)
+
Release 2.4.0 - UNRELEASED
INCOMPATIBLE CHANGES
@@ -934,8 +944,6 @@ Release 2.3.0 - UNRELEASED
HDFS-5677. Need error checking for HA cluster configuration.
(Vincent Sheffer via cos)
- HDFS-5704. Change OP_UPDATE_BLOCKS with a new OP_ADD_BLOCK. (jing9)
-
OPTIMIZATIONS
BUG FIXES
Propchange: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/
------------------------------------------------------------------------------
Merged /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java:r1558558-1558871
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/LayoutVersion.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/LayoutVersion.java?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/LayoutVersion.java (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/LayoutVersion.java Thu Jan 16 18:35:19 2014
@@ -107,11 +107,12 @@ public class LayoutVersion {
"block IDs in the edits log and image files"),
EDITLOG_SUPPORT_RETRYCACHE(-47, "Record ClientId and CallId in editlog to "
+ "enable rebuilding retry cache in case of HA failover"),
- CACHING(-48, "Support for cache pools and path-based caching"),
- ADD_DATANODE_AND_STORAGE_UUIDS(-49, "Replace StorageID with DatanodeUuid."
+ EDITLOG_ADD_BLOCK(-48, "Add new editlog that only records allocation of "
+ + "the new block instead of the entire block list"),
+ CACHING(-49, "Support for cache pools and path-based caching"),
+ ADD_DATANODE_AND_STORAGE_UUIDS(-50, "Replace StorageID with DatanodeUuid."
+ " Use distinct StorageUuid per storage directory.");
-
final int lv;
final int ancestorLV;
final String description;
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/security/token/delegation/DelegationTokenSecretManager.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/security/token/delegation/DelegationTokenSecretManager.java?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/security/token/delegation/DelegationTokenSecretManager.java (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/security/token/delegation/DelegationTokenSecretManager.java Thu Jan 16 18:35:19 2014
@@ -59,6 +59,7 @@ public class DelegationTokenSecretManage
.getLog(DelegationTokenSecretManager.class);
private final FSNamesystem namesystem;
+ private final SerializerCompat serializerCompat = new SerializerCompat();
public DelegationTokenSecretManager(long delegationKeyUpdateInterval,
long delegationTokenMaxLifetime, long delegationTokenRenewInterval,
@@ -150,24 +151,21 @@ public class DelegationTokenSecretManage
throw new IOException("No delegation token found for this identifier");
}
}
-
+
/**
* Load SecretManager state from fsimage.
*
* @param in input stream to read fsimage
* @throws IOException
*/
- public synchronized void loadSecretManagerState(DataInput in)
+ public synchronized void loadSecretManagerStateCompat(DataInput in)
throws IOException {
if (running) {
// a safety check
throw new IOException(
"Can't load state from image in a running SecretManager.");
}
- currentId = in.readInt();
- loadAllKeys(in);
- delegationTokenSequenceNumber = in.readInt();
- loadCurrentTokens(in);
+ serializerCompat.load(in);
}
/**
@@ -177,12 +175,9 @@ public class DelegationTokenSecretManage
* @param sdPath String storage directory path
* @throws IOException
*/
- public synchronized void saveSecretManagerState(DataOutputStream out,
+ public synchronized void saveSecretManagerStateCompat(DataOutputStream out,
String sdPath) throws IOException {
- out.writeInt(currentId);
- saveAllKeys(out, sdPath);
- out.writeInt(delegationTokenSequenceNumber);
- saveCurrentTokens(out, sdPath);
+ serializerCompat.save(out, sdPath);
}
/**
@@ -283,91 +278,6 @@ public class DelegationTokenSecretManage
}
/**
- * Private helper methods to save delegation keys and tokens in fsimage
- */
- private synchronized void saveCurrentTokens(DataOutputStream out,
- String sdPath) throws IOException {
- StartupProgress prog = NameNode.getStartupProgress();
- Step step = new Step(StepType.DELEGATION_TOKENS, sdPath);
- prog.beginStep(Phase.SAVING_CHECKPOINT, step);
- prog.setTotal(Phase.SAVING_CHECKPOINT, step, currentTokens.size());
- Counter counter = prog.getCounter(Phase.SAVING_CHECKPOINT, step);
- out.writeInt(currentTokens.size());
- Iterator<DelegationTokenIdentifier> iter = currentTokens.keySet()
- .iterator();
- while (iter.hasNext()) {
- DelegationTokenIdentifier id = iter.next();
- id.write(out);
- DelegationTokenInformation info = currentTokens.get(id);
- out.writeLong(info.getRenewDate());
- counter.increment();
- }
- prog.endStep(Phase.SAVING_CHECKPOINT, step);
- }
-
- /*
- * Save the current state of allKeys
- */
- private synchronized void saveAllKeys(DataOutputStream out, String sdPath)
- throws IOException {
- StartupProgress prog = NameNode.getStartupProgress();
- Step step = new Step(StepType.DELEGATION_KEYS, sdPath);
- prog.beginStep(Phase.SAVING_CHECKPOINT, step);
- prog.setTotal(Phase.SAVING_CHECKPOINT, step, currentTokens.size());
- Counter counter = prog.getCounter(Phase.SAVING_CHECKPOINT, step);
- out.writeInt(allKeys.size());
- Iterator<Integer> iter = allKeys.keySet().iterator();
- while (iter.hasNext()) {
- Integer key = iter.next();
- allKeys.get(key).write(out);
- counter.increment();
- }
- prog.endStep(Phase.SAVING_CHECKPOINT, step);
- }
-
- /**
- * Private helper methods to load Delegation tokens from fsimage
- */
- private synchronized void loadCurrentTokens(DataInput in)
- throws IOException {
- StartupProgress prog = NameNode.getStartupProgress();
- Step step = new Step(StepType.DELEGATION_TOKENS);
- prog.beginStep(Phase.LOADING_FSIMAGE, step);
- int numberOfTokens = in.readInt();
- prog.setTotal(Phase.LOADING_FSIMAGE, step, numberOfTokens);
- Counter counter = prog.getCounter(Phase.LOADING_FSIMAGE, step);
- for (int i = 0; i < numberOfTokens; i++) {
- DelegationTokenIdentifier id = new DelegationTokenIdentifier();
- id.readFields(in);
- long expiryTime = in.readLong();
- addPersistedDelegationToken(id, expiryTime);
- counter.increment();
- }
- prog.endStep(Phase.LOADING_FSIMAGE, step);
- }
-
- /**
- * Private helper method to load delegation keys from fsimage.
- * @param in
- * @throws IOException
- */
- private synchronized void loadAllKeys(DataInput in) throws IOException {
- StartupProgress prog = NameNode.getStartupProgress();
- Step step = new Step(StepType.DELEGATION_KEYS);
- prog.beginStep(Phase.LOADING_FSIMAGE, step);
- int numberOfKeys = in.readInt();
- prog.setTotal(Phase.LOADING_FSIMAGE, step, numberOfKeys);
- Counter counter = prog.getCounter(Phase.LOADING_FSIMAGE, step);
- for (int i = 0; i < numberOfKeys; i++) {
- DelegationKey value = new DelegationKey();
- value.readFields(in);
- addKey(value);
- counter.increment();
- }
- prog.endStep(Phase.LOADING_FSIMAGE, step);
- }
-
- /**
* Call namesystem to update editlogs for new master key.
*/
@Override //AbstractDelegationTokenManager
@@ -420,4 +330,105 @@ public class DelegationTokenSecretManage
c.addToken(new Text(ugi.getShortUserName()), token);
return c;
}
+
+ private final class SerializerCompat {
+ private void load(DataInput in) throws IOException {
+ currentId = in.readInt();
+ loadAllKeys(in);
+ delegationTokenSequenceNumber = in.readInt();
+ loadCurrentTokens(in);
+ }
+
+ private void save(DataOutputStream out, String sdPath) throws IOException {
+ out.writeInt(currentId);
+ saveAllKeys(out, sdPath);
+ out.writeInt(delegationTokenSequenceNumber);
+ saveCurrentTokens(out, sdPath);
+ }
+
+ /**
+ * Private helper methods to save delegation keys and tokens in fsimage
+ */
+ private synchronized void saveCurrentTokens(DataOutputStream out,
+ String sdPath) throws IOException {
+ StartupProgress prog = NameNode.getStartupProgress();
+ Step step = new Step(StepType.DELEGATION_TOKENS, sdPath);
+ prog.beginStep(Phase.SAVING_CHECKPOINT, step);
+ prog.setTotal(Phase.SAVING_CHECKPOINT, step, currentTokens.size());
+ Counter counter = prog.getCounter(Phase.SAVING_CHECKPOINT, step);
+ out.writeInt(currentTokens.size());
+ Iterator<DelegationTokenIdentifier> iter = currentTokens.keySet()
+ .iterator();
+ while (iter.hasNext()) {
+ DelegationTokenIdentifier id = iter.next();
+ id.write(out);
+ DelegationTokenInformation info = currentTokens.get(id);
+ out.writeLong(info.getRenewDate());
+ counter.increment();
+ }
+ prog.endStep(Phase.SAVING_CHECKPOINT, step);
+ }
+
+ /*
+ * Save the current state of allKeys
+ */
+ private synchronized void saveAllKeys(DataOutputStream out, String sdPath)
+ throws IOException {
+ StartupProgress prog = NameNode.getStartupProgress();
+ Step step = new Step(StepType.DELEGATION_KEYS, sdPath);
+ prog.beginStep(Phase.SAVING_CHECKPOINT, step);
+ prog.setTotal(Phase.SAVING_CHECKPOINT, step, currentTokens.size());
+ Counter counter = prog.getCounter(Phase.SAVING_CHECKPOINT, step);
+ out.writeInt(allKeys.size());
+ Iterator<Integer> iter = allKeys.keySet().iterator();
+ while (iter.hasNext()) {
+ Integer key = iter.next();
+ allKeys.get(key).write(out);
+ counter.increment();
+ }
+ prog.endStep(Phase.SAVING_CHECKPOINT, step);
+ }
+
+ /**
+ * Private helper methods to load Delegation tokens from fsimage
+ */
+ private synchronized void loadCurrentTokens(DataInput in)
+ throws IOException {
+ StartupProgress prog = NameNode.getStartupProgress();
+ Step step = new Step(StepType.DELEGATION_TOKENS);
+ prog.beginStep(Phase.LOADING_FSIMAGE, step);
+ int numberOfTokens = in.readInt();
+ prog.setTotal(Phase.LOADING_FSIMAGE, step, numberOfTokens);
+ Counter counter = prog.getCounter(Phase.LOADING_FSIMAGE, step);
+ for (int i = 0; i < numberOfTokens; i++) {
+ DelegationTokenIdentifier id = new DelegationTokenIdentifier();
+ id.readFields(in);
+ long expiryTime = in.readLong();
+ addPersistedDelegationToken(id, expiryTime);
+ counter.increment();
+ }
+ prog.endStep(Phase.LOADING_FSIMAGE, step);
+ }
+
+ /**
+ * Private helper method to load delegation keys from fsimage.
+ * @param in
+ * @throws IOException
+ */
+ private synchronized void loadAllKeys(DataInput in) throws IOException {
+ StartupProgress prog = NameNode.getStartupProgress();
+ Step step = new Step(StepType.DELEGATION_KEYS);
+ prog.beginStep(Phase.LOADING_FSIMAGE, step);
+ int numberOfKeys = in.readInt();
+ prog.setTotal(Phase.LOADING_FSIMAGE, step, numberOfKeys);
+ Counter counter = prog.getCounter(Phase.LOADING_FSIMAGE, step);
+ for (int i = 0; i < numberOfKeys; i++) {
+ DelegationKey value = new DelegationKey();
+ value.readFields(in);
+ addKey(value);
+ counter.increment();
+ }
+ prog.endStep(Phase.LOADING_FSIMAGE, step);
+ }
+ }
}
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/CacheManager.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/CacheManager.java?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/CacheManager.java (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/CacheManager.java Thu Jan 16 18:35:19 2014
@@ -160,6 +160,8 @@ public final class CacheManager {
*/
private final ReentrantLock crmLock = new ReentrantLock();
+ private final SerializerCompat serializerCompat = new SerializerCompat();
+
/**
* The CacheReplicationMonitor.
*/
@@ -926,11 +928,9 @@ public final class CacheManager {
* @param sdPath path of the storage directory
* @throws IOException
*/
- public void saveState(DataOutputStream out, String sdPath)
+ public void saveStateCompat(DataOutputStream out, String sdPath)
throws IOException {
- out.writeLong(nextDirectiveId);
- savePools(out, sdPath);
- saveDirectives(out, sdPath);
+ serializerCompat.save(out, sdPath);
}
/**
@@ -939,105 +939,117 @@ public final class CacheManager {
* @param in DataInput from which to restore state
* @throws IOException
*/
- public void loadState(DataInput in) throws IOException {
- nextDirectiveId = in.readLong();
- // pools need to be loaded first since directives point to their parent pool
- loadPools(in);
- loadDirectives(in);
- }
-
- /**
- * Save cache pools to fsimage
- */
- private void savePools(DataOutputStream out,
- String sdPath) throws IOException {
- StartupProgress prog = NameNode.getStartupProgress();
- Step step = new Step(StepType.CACHE_POOLS, sdPath);
- prog.beginStep(Phase.SAVING_CHECKPOINT, step);
- prog.setTotal(Phase.SAVING_CHECKPOINT, step, cachePools.size());
- Counter counter = prog.getCounter(Phase.SAVING_CHECKPOINT, step);
- out.writeInt(cachePools.size());
- for (CachePool pool: cachePools.values()) {
- FSImageSerialization.writeCachePoolInfo(out, pool.getInfo(true));
- counter.increment();
- }
- prog.endStep(Phase.SAVING_CHECKPOINT, step);
- }
-
- /*
- * Save cache entries to fsimage
- */
- private void saveDirectives(DataOutputStream out, String sdPath)
- throws IOException {
- StartupProgress prog = NameNode.getStartupProgress();
- Step step = new Step(StepType.CACHE_ENTRIES, sdPath);
- prog.beginStep(Phase.SAVING_CHECKPOINT, step);
- prog.setTotal(Phase.SAVING_CHECKPOINT, step, directivesById.size());
- Counter counter = prog.getCounter(Phase.SAVING_CHECKPOINT, step);
- out.writeInt(directivesById.size());
- for (CacheDirective directive : directivesById.values()) {
- FSImageSerialization.writeCacheDirectiveInfo(out, directive.toInfo());
- counter.increment();
- }
- prog.endStep(Phase.SAVING_CHECKPOINT, step);
- }
-
- /**
- * Load cache pools from fsimage
- */
- private void loadPools(DataInput in)
- throws IOException {
- StartupProgress prog = NameNode.getStartupProgress();
- Step step = new Step(StepType.CACHE_POOLS);
- prog.beginStep(Phase.LOADING_FSIMAGE, step);
- int numberOfPools = in.readInt();
- prog.setTotal(Phase.LOADING_FSIMAGE, step, numberOfPools);
- Counter counter = prog.getCounter(Phase.LOADING_FSIMAGE, step);
- for (int i = 0; i < numberOfPools; i++) {
- addCachePool(FSImageSerialization.readCachePoolInfo(in));
- counter.increment();
- }
- prog.endStep(Phase.LOADING_FSIMAGE, step);
+ public void loadStateCompat(DataInput in) throws IOException {
+ serializerCompat.load(in);
}
- /**
- * Load cache directives from the fsimage
- */
- private void loadDirectives(DataInput in) throws IOException {
- StartupProgress prog = NameNode.getStartupProgress();
- Step step = new Step(StepType.CACHE_ENTRIES);
- prog.beginStep(Phase.LOADING_FSIMAGE, step);
- int numDirectives = in.readInt();
- prog.setTotal(Phase.LOADING_FSIMAGE, step, numDirectives);
- Counter counter = prog.getCounter(Phase.LOADING_FSIMAGE, step);
- for (int i = 0; i < numDirectives; i++) {
- CacheDirectiveInfo info = FSImageSerialization.readCacheDirectiveInfo(in);
- // Get pool reference by looking it up in the map
- final String poolName = info.getPool();
- CachePool pool = cachePools.get(poolName);
- if (pool == null) {
- throw new IOException("Directive refers to pool " + poolName +
- ", which does not exist.");
- }
- CacheDirective directive =
- new CacheDirective(info.getId(), info.getPath().toUri().getPath(),
- info.getReplication(), info.getExpiration().getAbsoluteMillis());
- boolean addedDirective = pool.getDirectiveList().add(directive);
- assert addedDirective;
- if (directivesById.put(directive.getId(), directive) != null) {
- throw new IOException("A directive with ID " + directive.getId() +
- " already exists");
- }
- List<CacheDirective> directives =
- directivesByPath.get(directive.getPath());
- if (directives == null) {
- directives = new LinkedList<CacheDirective>();
- directivesByPath.put(directive.getPath(), directives);
+ private final class SerializerCompat {
+ private void save(DataOutputStream out, String sdPath) throws IOException {
+ out.writeLong(nextDirectiveId);
+ savePools(out, sdPath);
+ saveDirectives(out, sdPath);
+ }
+
+ private void load(DataInput in) throws IOException {
+ nextDirectiveId = in.readLong();
+ // pools need to be loaded first since directives point to their parent pool
+ loadPools(in);
+ loadDirectives(in);
+ }
+
+ /**
+ * Save cache pools to fsimage
+ */
+ private void savePools(DataOutputStream out,
+ String sdPath) throws IOException {
+ StartupProgress prog = NameNode.getStartupProgress();
+ Step step = new Step(StepType.CACHE_POOLS, sdPath);
+ prog.beginStep(Phase.SAVING_CHECKPOINT, step);
+ prog.setTotal(Phase.SAVING_CHECKPOINT, step, cachePools.size());
+ Counter counter = prog.getCounter(Phase.SAVING_CHECKPOINT, step);
+ out.writeInt(cachePools.size());
+ for (CachePool pool: cachePools.values()) {
+ FSImageSerialization.writeCachePoolInfo(out, pool.getInfo(true));
+ counter.increment();
+ }
+ prog.endStep(Phase.SAVING_CHECKPOINT, step);
+ }
+
+ /*
+ * Save cache entries to fsimage
+ */
+ private void saveDirectives(DataOutputStream out, String sdPath)
+ throws IOException {
+ StartupProgress prog = NameNode.getStartupProgress();
+ Step step = new Step(StepType.CACHE_ENTRIES, sdPath);
+ prog.beginStep(Phase.SAVING_CHECKPOINT, step);
+ prog.setTotal(Phase.SAVING_CHECKPOINT, step, directivesById.size());
+ Counter counter = prog.getCounter(Phase.SAVING_CHECKPOINT, step);
+ out.writeInt(directivesById.size());
+ for (CacheDirective directive : directivesById.values()) {
+ FSImageSerialization.writeCacheDirectiveInfo(out, directive.toInfo());
+ counter.increment();
+ }
+ prog.endStep(Phase.SAVING_CHECKPOINT, step);
+ }
+
+ /**
+ * Load cache pools from fsimage
+ */
+ private void loadPools(DataInput in)
+ throws IOException {
+ StartupProgress prog = NameNode.getStartupProgress();
+ Step step = new Step(StepType.CACHE_POOLS);
+ prog.beginStep(Phase.LOADING_FSIMAGE, step);
+ int numberOfPools = in.readInt();
+ prog.setTotal(Phase.LOADING_FSIMAGE, step, numberOfPools);
+ Counter counter = prog.getCounter(Phase.LOADING_FSIMAGE, step);
+ for (int i = 0; i < numberOfPools; i++) {
+ addCachePool(FSImageSerialization.readCachePoolInfo(in));
+ counter.increment();
+ }
+ prog.endStep(Phase.LOADING_FSIMAGE, step);
+ }
+
+ /**
+ * Load cache directives from the fsimage
+ */
+ private void loadDirectives(DataInput in) throws IOException {
+ StartupProgress prog = NameNode.getStartupProgress();
+ Step step = new Step(StepType.CACHE_ENTRIES);
+ prog.beginStep(Phase.LOADING_FSIMAGE, step);
+ int numDirectives = in.readInt();
+ prog.setTotal(Phase.LOADING_FSIMAGE, step, numDirectives);
+ Counter counter = prog.getCounter(Phase.LOADING_FSIMAGE, step);
+ for (int i = 0; i < numDirectives; i++) {
+ CacheDirectiveInfo info = FSImageSerialization.readCacheDirectiveInfo(in);
+ // Get pool reference by looking it up in the map
+ final String poolName = info.getPool();
+ CachePool pool = cachePools.get(poolName);
+ if (pool == null) {
+ throw new IOException("Directive refers to pool " + poolName +
+ ", which does not exist.");
+ }
+ CacheDirective directive =
+ new CacheDirective(info.getId(), info.getPath().toUri().getPath(),
+ info.getReplication(), info.getExpiration().getAbsoluteMillis());
+ boolean addedDirective = pool.getDirectiveList().add(directive);
+ assert addedDirective;
+ if (directivesById.put(directive.getId(), directive) != null) {
+ throw new IOException("A directive with ID " + directive.getId() +
+ " already exists");
+ }
+ List<CacheDirective> directives =
+ directivesByPath.get(directive.getPath());
+ if (directives == null) {
+ directives = new LinkedList<CacheDirective>();
+ directivesByPath.put(directive.getPath(), directives);
+ }
+ directives.add(directive);
+ counter.increment();
}
- directives.add(directive);
- counter.increment();
+ prog.endStep(Phase.LOADING_FSIMAGE, step);
}
- prog.endStep(Phase.LOADING_FSIMAGE, step);
}
public void waitForRescanIfNeeded() {
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOpCodes.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOpCodes.java?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOpCodes.java (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogOpCodes.java Thu Jan 16 18:35:19 2014
@@ -60,13 +60,13 @@ public enum FSEditLogOpCodes {
OP_DISALLOW_SNAPSHOT ((byte) 30),
OP_SET_GENSTAMP_V2 ((byte) 31),
OP_ALLOCATE_BLOCK_ID ((byte) 32),
- OP_ADD_CACHE_DIRECTIVE ((byte) 33),
- OP_REMOVE_CACHE_DIRECTIVE ((byte) 34),
- OP_ADD_CACHE_POOL ((byte) 35),
- OP_MODIFY_CACHE_POOL ((byte) 36),
- OP_REMOVE_CACHE_POOL ((byte) 37),
- OP_MODIFY_CACHE_DIRECTIVE ((byte) 38),
- OP_ADD_BLOCK ((byte) 39),
+ OP_ADD_BLOCK ((byte) 33),
+ OP_ADD_CACHE_DIRECTIVE ((byte) 34),
+ OP_REMOVE_CACHE_DIRECTIVE ((byte) 35),
+ OP_ADD_CACHE_POOL ((byte) 36),
+ OP_MODIFY_CACHE_POOL ((byte) 37),
+ OP_REMOVE_CACHE_POOL ((byte) 38),
+ OP_MODIFY_CACHE_DIRECTIVE ((byte) 39),
// Note that fromByte(..) depends on OP_INVALID being at the last position.
OP_INVALID ((byte) -1);
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImageFormat.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImageFormat.java?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImageFormat.java (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImageFormat.java Thu Jan 16 18:35:19 2014
@@ -870,7 +870,7 @@ public class FSImageFormat {
//This must not happen if security is turned on.
return;
}
- namesystem.loadSecretManagerState(in);
+ namesystem.loadSecretManagerStateCompat(in);
}
private void loadCacheManagerState(DataInput in) throws IOException {
@@ -878,7 +878,7 @@ public class FSImageFormat {
if (!LayoutVersion.supports(Feature.CACHING, imgVersion)) {
return;
}
- namesystem.getCacheManager().loadState(in);
+ namesystem.getCacheManager().loadStateCompat(in);
}
private int getLayoutVersion() {
@@ -1032,9 +1032,9 @@ public class FSImageFormat {
sourceNamesystem.saveFilesUnderConstruction(out, snapshotUCMap);
context.checkCancelled();
- sourceNamesystem.saveSecretManagerState(out, sdPath);
+ sourceNamesystem.saveSecretManagerStateCompat(out, sdPath);
context.checkCancelled();
- sourceNamesystem.getCacheManager().saveState(out, sdPath);
+ sourceNamesystem.getCacheManager().saveStateCompat(out, sdPath);
context.checkCancelled();
out.flush();
context.checkCancelled();
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java Thu Jan 16 18:35:19 2014
@@ -6250,16 +6250,16 @@ public class FSNamesystem implements Nam
* @param out save state of the secret manager
* @param sdPath String storage directory path
*/
- void saveSecretManagerState(DataOutputStream out, String sdPath)
+ void saveSecretManagerStateCompat(DataOutputStream out, String sdPath)
throws IOException {
- dtSecretManager.saveSecretManagerState(out, sdPath);
+ dtSecretManager.saveSecretManagerStateCompat(out, sdPath);
}
/**
* @param in load the state of secret manager from input stream
*/
- void loadSecretManagerState(DataInput in) throws IOException {
- dtSecretManager.loadSecretManagerState(in);
+ void loadSecretManagerStateCompat(DataInput in) throws IOException {
+ dtSecretManager.loadSecretManagerStateCompat(in);
}
/**
Modified: hadoop/common/branches/YARN-321/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/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/ImageLoaderCurrent.java?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/ImageLoaderCurrent.java (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/ImageLoaderCurrent.java Thu Jan 16 18:35:19 2014
@@ -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, -47, -48, -49 };
+ -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50 };
private int imageVersion = 0;
private final Map<Long, Boolean> subtreeMap = new HashMap<Long, Boolean>();
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
Binary files - no diff available.
Modified: hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml
URL: http://svn.apache.org/viewvc/hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml?rev=1558872&r1=1558871&r2=1558872&view=diff
==============================================================================
--- hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml (original)
+++ hadoop/common/branches/YARN-321/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/editsStored.xml Thu Jan 16 18:35:19 2014
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<EDITS>
- <EDITS_VERSION>-49</EDITS_VERSION>
+ <EDITS_VERSION>-50</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>1389736494300</EXPIRY_DATE>
- <KEY>d1a0861e6b9e394e</KEY>
+ <EXPIRY_DATE>1390519460949</EXPIRY_DATE>
+ <KEY>dc8d30edc97df67d</KEY>
</DELEGATION_KEY>
</DATA>
</RECORD>
@@ -24,8 +24,8 @@
<TXID>3</TXID>
<DELEGATION_KEY>
<KEY_ID>2</KEY_ID>
- <EXPIRY_DATE>1389736494302</EXPIRY_DATE>
- <KEY>8239b8f0ed7e6ce6</KEY>
+ <EXPIRY_DATE>1390519460952</EXPIRY_DATE>
+ <KEY>096bc20b6debed03</KEY>
</DELEGATION_KEY>
</DATA>
</RECORD>
@@ -37,18 +37,18 @@
<INODEID>16386</INODEID>
<PATH>/file_create</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295288</MTIME>
- <ATIME>1389045295288</ATIME>
+ <MTIME>1389828264873</MTIME>
+ <ATIME>1389828264873</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
- <CLIENT_NAME>DFSClient_NONMAPREDUCE_-216163116_1</CLIENT_NAME>
+ <CLIENT_NAME>DFSClient_NONMAPREDUCE_16108824_1</CLIENT_NAME>
<CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE>
<PERMISSION_STATUS>
<USERNAME>jing</USERNAME>
<GROUPNAME>supergroup</GROUPNAME>
<MODE>420</MODE>
</PERMISSION_STATUS>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>7</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>9</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -59,8 +59,8 @@
<INODEID>0</INODEID>
<PATH>/file_create</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295307</MTIME>
- <ATIME>1389045295288</ATIME>
+ <MTIME>1389828265699</MTIME>
+ <ATIME>1389828264873</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
<CLIENT_NAME></CLIENT_NAME>
<CLIENT_MACHINE></CLIENT_MACHINE>
@@ -78,9 +78,9 @@
<LENGTH>0</LENGTH>
<SRC>/file_create</SRC>
<DST>/file_moved</DST>
- <TIMESTAMP>1389045295311</TIMESTAMP>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>9</RPC_CALLID>
+ <TIMESTAMP>1389828265705</TIMESTAMP>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>11</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -89,9 +89,9 @@
<TXID>7</TXID>
<LENGTH>0</LENGTH>
<PATH>/file_moved</PATH>
- <TIMESTAMP>1389045295318</TIMESTAMP>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>10</RPC_CALLID>
+ <TIMESTAMP>1389828265712</TIMESTAMP>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>12</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -101,7 +101,7 @@
<LENGTH>0</LENGTH>
<INODEID>16387</INODEID>
<PATH>/directory_mkdir</PATH>
- <TIMESTAMP>1389045295326</TIMESTAMP>
+ <TIMESTAMP>1389828265722</TIMESTAMP>
<PERMISSION_STATUS>
<USERNAME>jing</USERNAME>
<GROUPNAME>supergroup</GROUPNAME>
@@ -136,8 +136,8 @@
<TXID>12</TXID>
<SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT>
<SNAPSHOTNAME>snapshot1</SNAPSHOTNAME>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>15</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>17</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -147,8 +147,8 @@
<SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT>
<SNAPSHOTOLDNAME>snapshot1</SNAPSHOTOLDNAME>
<SNAPSHOTNEWNAME>snapshot2</SNAPSHOTNEWNAME>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>16</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>18</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -157,8 +157,8 @@
<TXID>14</TXID>
<SNAPSHOTROOT>/directory_mkdir</SNAPSHOTROOT>
<SNAPSHOTNAME>snapshot2</SNAPSHOTNAME>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>17</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>19</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -169,18 +169,18 @@
<INODEID>16388</INODEID>
<PATH>/file_create</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295354</MTIME>
- <ATIME>1389045295354</ATIME>
+ <MTIME>1389828265757</MTIME>
+ <ATIME>1389828265757</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
- <CLIENT_NAME>DFSClient_NONMAPREDUCE_-216163116_1</CLIENT_NAME>
+ <CLIENT_NAME>DFSClient_NONMAPREDUCE_16108824_1</CLIENT_NAME>
<CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE>
<PERMISSION_STATUS>
<USERNAME>jing</USERNAME>
<GROUPNAME>supergroup</GROUPNAME>
<MODE>420</MODE>
</PERMISSION_STATUS>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>18</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>20</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -191,8 +191,8 @@
<INODEID>0</INODEID>
<PATH>/file_create</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295357</MTIME>
- <ATIME>1389045295354</ATIME>
+ <MTIME>1389828265759</MTIME>
+ <ATIME>1389828265757</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
<CLIENT_NAME></CLIENT_NAME>
<CLIENT_MACHINE></CLIENT_MACHINE>
@@ -253,10 +253,10 @@
<LENGTH>0</LENGTH>
<SRC>/file_create</SRC>
<DST>/file_moved</DST>
- <TIMESTAMP>1389045295378</TIMESTAMP>
+ <TIMESTAMP>1389828265782</TIMESTAMP>
<OPTIONS>NONE</OPTIONS>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>25</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>27</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -267,18 +267,18 @@
<INODEID>16389</INODEID>
<PATH>/file_concat_target</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295383</MTIME>
- <ATIME>1389045295383</ATIME>
+ <MTIME>1389828265787</MTIME>
+ <ATIME>1389828265787</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
- <CLIENT_NAME>DFSClient_NONMAPREDUCE_-216163116_1</CLIENT_NAME>
+ <CLIENT_NAME>DFSClient_NONMAPREDUCE_16108824_1</CLIENT_NAME>
<CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE>
<PERMISSION_STATUS>
<USERNAME>jing</USERNAME>
<GROUPNAME>supergroup</GROUPNAME>
<MODE>420</MODE>
</PERMISSION_STATUS>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>27</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>29</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -383,8 +383,8 @@
<INODEID>0</INODEID>
<PATH>/file_concat_target</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295484</MTIME>
- <ATIME>1389045295383</ATIME>
+ <MTIME>1389828266540</MTIME>
+ <ATIME>1389828265787</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
<CLIENT_NAME></CLIENT_NAME>
<CLIENT_MACHINE></CLIENT_MACHINE>
@@ -418,18 +418,18 @@
<INODEID>16390</INODEID>
<PATH>/file_concat_0</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295486</MTIME>
- <ATIME>1389045295486</ATIME>
+ <MTIME>1389828266544</MTIME>
+ <ATIME>1389828266544</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
- <CLIENT_NAME>DFSClient_NONMAPREDUCE_-216163116_1</CLIENT_NAME>
+ <CLIENT_NAME>DFSClient_NONMAPREDUCE_16108824_1</CLIENT_NAME>
<CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE>
<PERMISSION_STATUS>
<USERNAME>jing</USERNAME>
<GROUPNAME>supergroup</GROUPNAME>
<MODE>420</MODE>
</PERMISSION_STATUS>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>40</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>41</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -534,8 +534,8 @@
<INODEID>0</INODEID>
<PATH>/file_concat_0</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295507</MTIME>
- <ATIME>1389045295486</ATIME>
+ <MTIME>1389828266569</MTIME>
+ <ATIME>1389828266544</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
<CLIENT_NAME></CLIENT_NAME>
<CLIENT_MACHINE></CLIENT_MACHINE>
@@ -569,18 +569,18 @@
<INODEID>16391</INODEID>
<PATH>/file_concat_1</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295509</MTIME>
- <ATIME>1389045295509</ATIME>
+ <MTIME>1389828266572</MTIME>
+ <ATIME>1389828266572</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
- <CLIENT_NAME>DFSClient_NONMAPREDUCE_-216163116_1</CLIENT_NAME>
+ <CLIENT_NAME>DFSClient_NONMAPREDUCE_16108824_1</CLIENT_NAME>
<CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE>
<PERMISSION_STATUS>
<USERNAME>jing</USERNAME>
<GROUPNAME>supergroup</GROUPNAME>
<MODE>420</MODE>
</PERMISSION_STATUS>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>52</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>53</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -685,8 +685,8 @@
<INODEID>0</INODEID>
<PATH>/file_concat_1</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295532</MTIME>
- <ATIME>1389045295509</ATIME>
+ <MTIME>1389828266599</MTIME>
+ <ATIME>1389828266572</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
<CLIENT_NAME></CLIENT_NAME>
<CLIENT_MACHINE></CLIENT_MACHINE>
@@ -718,13 +718,13 @@
<TXID>56</TXID>
<LENGTH>0</LENGTH>
<TRG>/file_concat_target</TRG>
- <TIMESTAMP>1389045295535</TIMESTAMP>
+ <TIMESTAMP>1389828266603</TIMESTAMP>
<SOURCES>
<SOURCE1>/file_concat_0</SOURCE1>
<SOURCE2>/file_concat_1</SOURCE2>
</SOURCES>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>63</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>64</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -735,15 +735,15 @@
<INODEID>16392</INODEID>
<PATH>/file_symlink</PATH>
<VALUE>/file_concat_target</VALUE>
- <MTIME>1389045295540</MTIME>
- <ATIME>1389045295540</ATIME>
+ <MTIME>1389828266633</MTIME>
+ <ATIME>1389828266633</ATIME>
<PERMISSION_STATUS>
<USERNAME>jing</USERNAME>
<GROUPNAME>supergroup</GROUPNAME>
<MODE>511</MODE>
</PERMISSION_STATUS>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>64</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>66</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -754,18 +754,18 @@
<INODEID>16393</INODEID>
<PATH>/hard-lease-recovery-test</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045295543</MTIME>
- <ATIME>1389045295543</ATIME>
+ <MTIME>1389828266637</MTIME>
+ <ATIME>1389828266637</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
- <CLIENT_NAME>DFSClient_NONMAPREDUCE_-216163116_1</CLIENT_NAME>
+ <CLIENT_NAME>DFSClient_NONMAPREDUCE_16108824_1</CLIENT_NAME>
<CLIENT_MACHINE>127.0.0.1</CLIENT_MACHINE>
<PERMISSION_STATUS>
<USERNAME>jing</USERNAME>
<GROUPNAME>supergroup</GROUPNAME>
<MODE>420</MODE>
</PERMISSION_STATUS>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>65</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>67</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -821,7 +821,7 @@
<OPCODE>OP_REASSIGN_LEASE</OPCODE>
<DATA>
<TXID>64</TXID>
- <LEASEHOLDER>DFSClient_NONMAPREDUCE_-216163116_1</LEASEHOLDER>
+ <LEASEHOLDER>DFSClient_NONMAPREDUCE_16108824_1</LEASEHOLDER>
<PATH>/hard-lease-recovery-test</PATH>
<NEWHOLDER>HDFS_NameNode</NEWHOLDER>
</DATA>
@@ -834,8 +834,8 @@
<INODEID>0</INODEID>
<PATH>/hard-lease-recovery-test</PATH>
<REPLICATION>1</REPLICATION>
- <MTIME>1389045298180</MTIME>
- <ATIME>1389045295543</ATIME>
+ <MTIME>1389828269751</MTIME>
+ <ATIME>1389828266637</ATIME>
<BLOCKSIZE>512</BLOCKSIZE>
<CLIENT_NAME></CLIENT_NAME>
<CLIENT_MACHINE></CLIENT_MACHINE>
@@ -861,8 +861,8 @@
<MODE>493</MODE>
<LIMIT>9223372036854775807</LIMIT>
<MAXRELATIVEEXPIRY>2305843009213693951</MAXRELATIVEEXPIRY>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>72</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>74</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -871,8 +871,8 @@
<TXID>67</TXID>
<POOLNAME>pool1</POOLNAME>
<LIMIT>99</LIMIT>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>73</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>75</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -883,9 +883,9 @@
<PATH>/path</PATH>
<REPLICATION>1</REPLICATION>
<POOL>pool1</POOL>
- <EXPIRATION>2305844398258992525</EXPIRATION>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>74</RPC_CALLID>
+ <EXPIRATION>2305844399041964876</EXPIRATION>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>76</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -894,8 +894,8 @@
<TXID>69</TXID>
<ID>1</ID>
<REPLICATION>2</REPLICATION>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>75</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>77</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -903,8 +903,8 @@
<DATA>
<TXID>70</TXID>
<ID>1</ID>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>76</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>78</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>
@@ -912,8 +912,8 @@
<DATA>
<TXID>71</TXID>
<POOLNAME>pool1</POOLNAME>
- <RPC_CLIENTID>48c96601-9238-4d1f-b78b-ef0f1e922ba2</RPC_CLIENTID>
- <RPC_CALLID>77</RPC_CALLID>
+ <RPC_CLIENTID>b5928e80-e373-4807-a688-f94483d08ce5</RPC_CLIENTID>
+ <RPC_CALLID>79</RPC_CALLID>
</DATA>
</RECORD>
<RECORD>