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 wa...@apache.org on 2013/10/24 07:40:29 UTC
svn commit: r1535282 - in
/hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs:
CHANGES-HDFS-4949.txt
src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java
Author: wang
Date: Thu Oct 24 05:40:28 2013
New Revision: 1535282
URL: http://svn.apache.org/r1535282
Log:
HDFS-5405. Fix possible RetryCache hang for caching RPC handlers in FSNamesystem. (Contributed by Andrew Wang)
Modified:
hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-4949.txt
hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java
Modified: hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-4949.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-4949.txt?rev=1535282&r1=1535281&r2=1535282&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-4949.txt (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/CHANGES-HDFS-4949.txt Thu Oct 24 05:40:28 2013
@@ -118,3 +118,6 @@ HDFS-4949 (Unreleased)
HDFS-5404. Resolve regressions in Windows compatibility on HDFS-4949
branch. (Chris Nauroth via Andrew Wang)
+ HDFS-5405. Fix possible RetryCache hang for caching RPC handlers in
+ FSNamesystem. (wang)
+
Modified: hadoop/common/branches/HDFS-4949/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/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java?rev=1535282&r1=1535281&r2=1535282&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java Thu Oct 24 05:40:28 2013
@@ -6922,16 +6922,16 @@ public class FSNamesystem implements Nam
PathBasedCacheDescriptor addPathBasedCacheDirective(
PathBasedCacheDirective directive) throws IOException {
+ checkOperation(OperationCategory.WRITE);
+ final FSPermissionChecker pc = isPermissionEnabled ?
+ getPermissionChecker() : null;
CacheEntryWithPayload cacheEntry =
RetryCache.waitForCompletion(retryCache, null);
if (cacheEntry != null && cacheEntry.isSuccess()) {
return (PathBasedCacheDescriptor) cacheEntry.getPayload();
}
- final FSPermissionChecker pc = isPermissionEnabled ?
- getPermissionChecker() : null;
boolean success = false;
PathBasedCacheDescriptor result = null;
- checkOperation(OperationCategory.WRITE);
writeLock();
try {
checkOperation(OperationCategory.WRITE);
@@ -6957,14 +6957,14 @@ public class FSNamesystem implements Nam
}
void removePathBasedCacheDescriptor(Long id) throws IOException {
+ checkOperation(OperationCategory.WRITE);
+ final FSPermissionChecker pc = isPermissionEnabled ?
+ getPermissionChecker() : null;
CacheEntry cacheEntry = RetryCache.waitForCompletion(retryCache);
if (cacheEntry != null && cacheEntry.isSuccess()) {
return;
}
- final FSPermissionChecker pc = isPermissionEnabled ?
- getPermissionChecker() : null;
boolean success = false;
- checkOperation(OperationCategory.WRITE);
writeLock();
try {
checkOperation(OperationCategory.WRITE);
@@ -6988,10 +6988,10 @@ public class FSNamesystem implements Nam
BatchedListEntries<PathBasedCacheDescriptor> listPathBasedCacheDescriptors(
long startId, String pool, String path) throws IOException {
+ checkOperation(OperationCategory.READ);
final FSPermissionChecker pc = isPermissionEnabled ?
getPermissionChecker() : null;
BatchedListEntries<PathBasedCacheDescriptor> results;
- checkOperation(OperationCategory.READ);
readLock();
boolean success = false;
try {
@@ -7010,13 +7010,13 @@ public class FSNamesystem implements Nam
}
public void addCachePool(CachePoolInfo req) throws IOException {
+ checkOperation(OperationCategory.WRITE);
final FSPermissionChecker pc = isPermissionEnabled ?
getPermissionChecker() : null;
CacheEntry cacheEntry = RetryCache.waitForCompletion(retryCache);
if (cacheEntry != null && cacheEntry.isSuccess()) {
return; // Return previous response
}
- checkOperation(OperationCategory.WRITE);
writeLock();
boolean success = false;
try {
@@ -7043,13 +7043,13 @@ public class FSNamesystem implements Nam
}
public void modifyCachePool(CachePoolInfo req) throws IOException {
+ checkOperation(OperationCategory.WRITE);
final FSPermissionChecker pc =
isPermissionEnabled ? getPermissionChecker() : null;
CacheEntry cacheEntry = RetryCache.waitForCompletion(retryCache);
if (cacheEntry != null && cacheEntry.isSuccess()) {
return; // Return previous response
}
- checkOperation(OperationCategory.WRITE);
writeLock();
boolean success = false;
try {
@@ -7076,13 +7076,13 @@ public class FSNamesystem implements Nam
}
public void removeCachePool(String cachePoolName) throws IOException {
+ checkOperation(OperationCategory.WRITE);
final FSPermissionChecker pc =
isPermissionEnabled ? getPermissionChecker() : null;
CacheEntry cacheEntry = RetryCache.waitForCompletion(retryCache);
if (cacheEntry != null && cacheEntry.isSuccess()) {
return; // Return previous response
}
- checkOperation(OperationCategory.WRITE);
writeLock();
boolean success = false;
try {