diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index 569e85682b2..b0863471f03 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -160,6 +160,9 @@ Release 0.23.3 - UNRELEASED HADOOP-8098. KerberosAuthenticatorHandler should use _HOST replacement to resolve principal name (tucu) + HADOOP-8118. In metrics2.util.MBeans, change log level to trace for the + stack trace of InstanceAlreadyExistsException. (szetszwo) + OPTIMIZATIONS BUG FIXES diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/util/MBeans.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/util/MBeans.java index 24f95e351e6..73c2109b308 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/util/MBeans.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/util/MBeans.java @@ -18,6 +18,8 @@ package org.apache.hadoop.metrics2.util; import java.lang.management.ManagementFactory; + +import javax.management.InstanceAlreadyExistsException; import javax.management.MBeanServer; import javax.management.ObjectName; @@ -55,8 +57,15 @@ public class MBeans { mbs.registerMBean(theMbean, name); LOG.debug("Registered "+ name); return name; + } catch (InstanceAlreadyExistsException iaee) { + if (LOG.isTraceEnabled()) { + LOG.trace("Failed to register MBean \""+ name + "\"", iaee); + } else { + LOG.warn("Failed to register MBean \""+ name + + "\": Instance already exists."); + } } catch (Exception e) { - LOG.warn("Error registering "+ name, e); + LOG.warn("Failed to register MBean \""+ name + "\"", e); } return null; }