From 9c0060ead8e75ab1ce6add6768a82b8db16c1f8a Mon Sep 17 00:00:00 2001 From: Kihwal Lee Date: Fri, 20 Dec 2013 16:07:02 +0000 Subject: [PATCH] svn merge -c 1552711 merging from trunk to branch-2 to fix HDFS-5681. renewLease should not hold fsn write lock. git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1552713 13f79535-47bb-0310-9956-ffa450edef68 --- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 2 ++ .../org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index dd36b9f6549..0686a359f4e 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -194,6 +194,8 @@ Release 2.4.0 - UNRELEASED HDFS-5341. Reduce fsdataset lock duration during directory scanning. (Qus-Jiawei via kihwal) + HDFS-5681. renewLease should not hold fsn write lock. (daryn via Kihwal) + BUG FIXES HDFS-5034. Remove debug prints from GetFileLinkInfo (Andrew Wang via Colin diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java index 6e0ed12152c..f3ab5144c7c 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java @@ -3976,13 +3976,13 @@ String persistBlocks(INodeFileUnderConstruction pendingFile, */ void renewLease(String holder) throws IOException { checkOperation(OperationCategory.WRITE); - writeLock(); + readLock(); try { checkOperation(OperationCategory.WRITE); checkNameNodeSafeMode("Cannot renew lease for " + holder); leaseManager.renewLease(holder); } finally { - writeUnlock(); + readUnlock(); } }