Repository: ambari
Updated Branches:
  refs/heads/trunk 82a64e498 -> 7a7bc003f


AMBARI-19320 : Additional query support for HDFS TopN metrics (Commit 2) 
(avijayan)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/7a7bc003
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/7a7bc003
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/7a7bc003

Branch: refs/heads/trunk
Commit: 7a7bc003f8d9f3eb1a84b66685e9036bcc92679a
Parents: 82a64e4
Author: Aravindan Vijayan <[email protected]>
Authored: Wed Jan 4 15:31:05 2017 -0800
Committer: Aravindan Vijayan <[email protected]>
Committed: Wed Jan 4 15:31:05 2017 -0800

----------------------------------------------------------------------
 .../metrics/timeline/PhoenixHBaseAccessor.java                | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/7a7bc003/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/PhoenixHBaseAccessor.java
----------------------------------------------------------------------
diff --git 
a/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/PhoenixHBaseAccessor.java
 
b/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/PhoenixHBaseAccessor.java
index 3ced17d..3add411 100644
--- 
a/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/PhoenixHBaseAccessor.java
+++ 
b/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/PhoenixHBaseAccessor.java
@@ -1149,8 +1149,11 @@ public class PhoenixHBaseAccessor {
     for (String metricNameEntry : metricFunctions.keySet()) {
 
       String metricRegEx;
-      if (metricNameEntry.contains("*")) {
-        String metricNameWithEscSeq = metricNameEntry.replace("*","\\*");
+      //Special case handling for metric name with * and __%.
+      //For example, dfs.NNTopUserOpCounts.windowMs=300000.op=*.user=%.count
+      // or dfs.NNTopUserOpCounts.windowMs=300000.op=__%.user=%.count
+      if (metricNameEntry.contains("*") || metricNameEntry.contains("__%")) {
+        String metricNameWithEscSeq = metricNameEntry.replace("*", 
"\\*").replace("__%", "..%");
         metricRegEx = metricNameWithEscSeq.replace("%", ".*");
       } else {
         metricRegEx = metricNameEntry.replace("%", ".*");

Reply via email to