Repository: hadoop Updated Branches: refs/heads/branch-2.6.1 08006b84f -> 7b1a71a7a
HDFS-7894. Rolling upgrade readiness is not updated in jmx until query command is issued. Contributed by Brahma Reddy Battula. (cherry picked from commit 6f622672b62aa8d719060063ef0e47480cdc8655) (cherry picked from commit 802a5775f3522c57c60ae29ecb9533dbbfecfe76) (cherry picked from commit 995382c5234ad6c07f327e5d1f2a1c7e391a0b60) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/bbed4e67 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/bbed4e67 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/bbed4e67 Branch: refs/heads/branch-2.6.1 Commit: bbed4e67a99196a750e9cb5ff9f9595b9bc7a196 Parents: 08006b8 Author: Kihwal Lee <[email protected]> Authored: Fri May 8 09:32:07 2015 -0500 Committer: Vinod Kumar Vavilapalli <[email protected]> Committed: Thu Sep 3 11:38:46 2015 -0700 ---------------------------------------------------------------------- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 3 +++ .../hdfs/server/namenode/FSNamesystem.java | 23 ++++++++++++++++++-- 2 files changed, 24 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/bbed4e67/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index 4ccbd5d..ad8bebf 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -132,6 +132,9 @@ Release 2.6.1 - UNRELEASED HDFS-8219. setStoragePolicy with folder behavior is different after cluster restart. (surendra singh lilhore via Xiaoyu Yao) + HDFS-7894. Rolling upgrade readiness is not updated in jmx until query + command is issued. (Brahma Reddy Battula via kihwal) + Release 2.6.0 - 2014-11-18 INCOMPATIBLE CHANGES http://git-wip-us.apache.org/repos/asf/hadoop/blob/bbed4e67/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java ---------------------------------------------------------------------- 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 5f396f7..2c6a65d 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 @@ -8417,11 +8417,30 @@ public class FSNamesystem implements Namesystem, FSClusterStats, @Override // NameNodeMXBean public RollingUpgradeInfo.Bean getRollingUpgradeStatus() { + if (!isRollingUpgrade()) { + return null; + } RollingUpgradeInfo upgradeInfo = getRollingUpgradeInfo(); - if (upgradeInfo != null) { + if (upgradeInfo.createdRollbackImages()) { return new RollingUpgradeInfo.Bean(upgradeInfo); } - return null; + readLock(); + try { + // check again after acquiring the read lock. + upgradeInfo = getRollingUpgradeInfo(); + if (upgradeInfo == null) { + return null; + } + if (!upgradeInfo.createdRollbackImages()) { + boolean hasRollbackImage = this.getFSImage().hasRollbackFSImage(); + upgradeInfo.setCreatedRollbackImages(hasRollbackImage); + } + } catch (IOException ioe) { + LOG.warn("Encountered exception setting Rollback Image", ioe); + } finally { + readUnlock(); + } + return new RollingUpgradeInfo.Bean(upgradeInfo); } /** Is rolling upgrade in progress? */
