Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 0.20.203.0, 0.23.0
    • Fix Version/s: 0.20.204.0, 0.23.0
    • Component/s: metrics
    • Labels:
    • Hadoop Flags:
      Reviewed
    • Tags:
      metrics, ganglia

      Description

      Although, all metrics in metrics v2 are exposed via the standard JMX mechanisms, most users are using Ganglia to collect metrics.

      1. HADOOP-7324_trunk.patch
        43 kB
        Priyo Mustafi
      2. HADOOP-7324_branch-0.20-security.patch
        40 kB
        Priyo Mustafi

        Issue Links

          Activity

          Hide
          Owen O'Malley added a comment -

          Hadoop 0.20.204.0 was released today.

          Show
          Owen O'Malley added a comment - Hadoop 0.20.204.0 was released today.
          Hide
          Priyo Mustafi added a comment -

          Thanks a lot Luke with all your help and advice!

          Show
          Priyo Mustafi added a comment - Thanks a lot Luke with all your help and advice!
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Common-trunk #744 (See https://builds.apache.org/job/Hadoop-Common-trunk/744/)
          HADOOP-7324. Ganglia plugins for metrics v2. (Priyo Mustafi via llu)

          llu : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1145525
          Files :

          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/util/TestMetricsCache.java
          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink
          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink/ganglia/GangliaMetricsTestHelper.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaMetricVisitor.java
          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink/ganglia
          • /hadoop/common/trunk/common/CHANGES.txt
          • /hadoop/common/trunk/common/conf/hadoop-metrics2.properties
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaConf.java
          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/impl/TestGangliaMetrics.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/AbstractGangliaSink.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaSink31.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/util/MetricsCache.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaSink30.java
          Show
          Hudson added a comment - Integrated in Hadoop-Common-trunk #744 (See https://builds.apache.org/job/Hadoop-Common-trunk/744/ ) HADOOP-7324 . Ganglia plugins for metrics v2. (Priyo Mustafi via llu) llu : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1145525 Files : /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/util/TestMetricsCache.java /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink/ganglia/GangliaMetricsTestHelper.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaMetricVisitor.java /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink/ganglia /hadoop/common/trunk/common/CHANGES.txt /hadoop/common/trunk/common/conf/hadoop-metrics2.properties /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaConf.java /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/impl/TestGangliaMetrics.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/AbstractGangliaSink.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaSink31.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/util/MetricsCache.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaSink30.java
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Common-trunk-Commit #685 (See https://builds.apache.org/job/Hadoop-Common-trunk-Commit/685/)
          HADOOP-7324. Ganglia plugins for metrics v2. (Priyo Mustafi via llu)

          llu : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1145525
          Files :

          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/util/TestMetricsCache.java
          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink
          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink/ganglia/GangliaMetricsTestHelper.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaMetricVisitor.java
          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink/ganglia
          • /hadoop/common/trunk/common/CHANGES.txt
          • /hadoop/common/trunk/common/conf/hadoop-metrics2.properties
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaConf.java
          • /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/impl/TestGangliaMetrics.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/AbstractGangliaSink.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaSink31.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/util/MetricsCache.java
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia
          • /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaSink30.java
          Show
          Hudson added a comment - Integrated in Hadoop-Common-trunk-Commit #685 (See https://builds.apache.org/job/Hadoop-Common-trunk-Commit/685/ ) HADOOP-7324 . Ganglia plugins for metrics v2. (Priyo Mustafi via llu) llu : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1145525 Files : /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/util/TestMetricsCache.java /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink/ganglia/GangliaMetricsTestHelper.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaMetricVisitor.java /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/sink/ganglia /hadoop/common/trunk/common/CHANGES.txt /hadoop/common/trunk/common/conf/hadoop-metrics2.properties /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaConf.java /hadoop/common/trunk/common/src/test/core/org/apache/hadoop/metrics2/impl/TestGangliaMetrics.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/AbstractGangliaSink.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaSink31.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/util/MetricsCache.java /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia /hadoop/common/trunk/common/src/java/org/apache/hadoop/metrics2/sink/ganglia/GangliaSink30.java
          Hide
          Luke Lu added a comment -

          +1. Committed to trunk and branch-0.20-security-204. Thanks Priyo!

          Show
          Luke Lu added a comment - +1. Committed to trunk and branch-0.20-security-204. Thanks Priyo!
          Hide
          Hadoop QA added a comment -

          +1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12486107/HADOOP-7324_trunk.patch
          against trunk revision 1144858.

          +1 @author. The patch does not contain any @author tags.

          +1 tests included. The patch appears to include 7 new or modified tests.

          +1 javadoc. The javadoc tool did not generate any warning messages.

          +1 javac. The applied patch does not increase the total number of javac compiler warnings.

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

          +1 release audit. The applied patch does not increase the total number of release audit warnings.

          +1 core tests. The patch passed core unit tests.

          +1 system test framework. The patch passed system test framework compile.

          Test results: https://builds.apache.org/job/PreCommit-HADOOP-Build/717//testReport/
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HADOOP-Build/717//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
          Console output: https://builds.apache.org/job/PreCommit-HADOOP-Build/717//console

          This message is automatically generated.

          Show
          Hadoop QA added a comment - +1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12486107/HADOOP-7324_trunk.patch against trunk revision 1144858. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 7 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed core unit tests. +1 system test framework. The patch passed system test framework compile. Test results: https://builds.apache.org/job/PreCommit-HADOOP-Build/717//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HADOOP-Build/717//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: https://builds.apache.org/job/PreCommit-HADOOP-Build/717//console This message is automatically generated.
          Hide
          Priyo Mustafi added a comment -

          Fix the issue in the earlier patch

          Show
          Priyo Mustafi added a comment - Fix the issue in the earlier patch
          Hide
          Hadoop QA added a comment -

          -1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12485802/HADOOP-7324_trunk.patch
          against trunk revision 1144043.

          +1 @author. The patch does not contain any @author tags.

          +1 tests included. The patch appears to include 7 new or modified tests.

          +1 javadoc. The javadoc tool did not generate any warning messages.

          +1 javac. The applied patch does not increase the total number of javac compiler warnings.

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

          +1 release audit. The applied patch does not increase the total number of release audit warnings.

          -1 core tests. The patch failed these core unit tests:
          org.apache.hadoop.metrics2.sink.ganglia.TestGangliaMetricsHelper

          +1 system test framework. The patch passed system test framework compile.

          Test results: https://builds.apache.org/job/PreCommit-HADOOP-Build/713//testReport/
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HADOOP-Build/713//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
          Console output: https://builds.apache.org/job/PreCommit-HADOOP-Build/713//console

          This message is automatically generated.

          Show
          Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12485802/HADOOP-7324_trunk.patch against trunk revision 1144043. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 7 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. -1 core tests. The patch failed these core unit tests: org.apache.hadoop.metrics2.sink.ganglia.TestGangliaMetricsHelper +1 system test framework. The patch passed system test framework compile. Test results: https://builds.apache.org/job/PreCommit-HADOOP-Build/713//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HADOOP-Build/713//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: https://builds.apache.org/job/PreCommit-HADOOP-Build/713//console This message is automatically generated.
          Hide
          Priyo Mustafi added a comment -

          Below is test-patch results on trunk. Earlier one above was for the security branch

          [exec] +1 overall.
          [exec]
          [exec] +1 @author. The patch does not contain any @author tags.
          [exec]
          [exec] +1 tests included. The patch appears to include 7 new or modified tests.
          [exec]
          [exec] +1 javadoc. The javadoc tool did not generate any warning messages.
          [exec]
          [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings.
          [exec]
          [exec] +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.
          [exec]
          [exec] +1 release audit. The applied patch does not increase the total number of release audit warnings.
          [exec]
          [exec] +1 system test framework. The patch passed system test framework compile.
          [exec]
          [exec]

          Show
          Priyo Mustafi added a comment - Below is test-patch results on trunk. Earlier one above was for the security branch [exec] +1 overall. [exec] [exec] +1 @author. The patch does not contain any @author tags. [exec] [exec] +1 tests included. The patch appears to include 7 new or modified tests. [exec] [exec] +1 javadoc. The javadoc tool did not generate any warning messages. [exec] [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings. [exec] [exec] +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings. [exec] [exec] +1 release audit. The applied patch does not increase the total number of release audit warnings. [exec] [exec] +1 system test framework. The patch passed system test framework compile. [exec] [exec]
          Hide
          Priyo Mustafi added a comment -

          Patch for trunk

          Show
          Priyo Mustafi added a comment - Patch for trunk
          Hide
          Owen O'Malley added a comment -

          +1 for commit to 204

          Show
          Owen O'Malley added a comment - +1 for commit to 204
          Hide
          Luke Lu added a comment -

          +1. Committed to branch-0.20-security. Thanks Priyo!

          I think it should go into 0.20.204 as well, as it's a low risk backward compatible change and fills a significant gap in functionality. It's release manager's call though.

          Show
          Luke Lu added a comment - +1. Committed to branch-0.20-security. Thanks Priyo! I think it should go into 0.20.204 as well, as it's a low risk backward compatible change and fills a significant gap in functionality. It's release manager's call though.
          Hide
          Priyo Mustafi added a comment -

          test-patch results below

          [exec] +1 overall.
          [exec]
          [exec] +1 @author. The patch does not contain any @author tags.
          [exec]
          [exec] +1 tests included. The patch appears to include 7 new or modified tests.
          [exec]
          [exec] +1 javadoc. The javadoc tool did not generate any warning messages.
          [exec]
          [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings.
          [exec]
          [exec] +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

          Show
          Priyo Mustafi added a comment - test-patch results below [exec] +1 overall. [exec] [exec] +1 @author. The patch does not contain any @author tags. [exec] [exec] +1 tests included. The patch appears to include 7 new or modified tests. [exec] [exec] +1 javadoc. The javadoc tool did not generate any warning messages. [exec] [exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings. [exec] [exec] +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.
          Hide
          Priyo Mustafi added a comment -

          Attach latest patch which works for branch-0.20-security

          Show
          Priyo Mustafi added a comment - Attach latest patch which works for branch-0.20-security
          Hide
          Priyo Mustafi added a comment -

          Latest patch addressing some feedback.

          Few other things that were not mentioned here but I got in an email from Luke
          1) If for a metric no slope is configured, default the slope to "positive" for Counters. After doing this, I am seeing positive slope graphs for those metrics. Not sure if this was expected behavior
          2) The code assumes the call to putmetrics is done in a threadsafe manner.

          Show
          Priyo Mustafi added a comment - Latest patch addressing some feedback. Few other things that were not mentioned here but I got in an email from Luke 1) If for a metric no slope is configured, default the slope to "positive" for Counters. After doing this, I am seeing positive slope graphs for those metrics. Not sure if this was expected behavior 2) The code assumes the call to putmetrics is done in a threadsafe manner.
          Hide
          Luke Lu added a comment -

          Thanks Priyo, the patch is coming together nicely.

          More issues I missed/noticed:

          1. Breaking the MetricsCache API requires the approval of release manager for branch-0.20-security. It'd be better if we can keep the existing MetricsCache#getMetric method intact and add a #getMetricInstance for the object.
          2. You can have the abstract sink implement the visitor interface to avoid creating new instances of the visitor in #putMetrics.
          3. It'll be nice to have a unit test for these sinks. We can mock the datagramSocket to capture the packet with mockito.
          Show
          Luke Lu added a comment - Thanks Priyo, the patch is coming together nicely. More issues I missed/noticed: Breaking the MetricsCache API requires the approval of release manager for branch-0.20-security. It'd be better if we can keep the existing MetricsCache#getMetric method intact and add a #getMetricInstance for the object. You can have the abstract sink implement the visitor interface to avoid creating new instances of the visitor in #putMetrics. It'll be nice to have a unit test for these sinks. We can mock the datagramSocket to capture the packet with mockito.
          Hide
          Priyo Mustafi added a comment -

          New patch with Luke's suggested changes

          Show
          Priyo Mustafi added a comment - New patch with Luke's suggested changes
          Hide
          Luke Lu added a comment -

          Thanks for the nice patch, Priyo!

          Here is a preliminary review:

          1. Like I mentioned in our email exchange, I'm hesitant to make the impl classes public and use them directly in the sink. It breaks abstraction that makes certain later optimizations impossible. A better approach would be using the builtin visitor interface. That said, it might be OK in 0.20.20x series, as they're mostly in maintenance mode.
          2. In the #init, please log the exception instead of printStackTrace.
          3. The #getTag method is only used to get the context of the record, which is unnecessary, as the record has a #context method.
          4. The #parseSocket method is unnecessary, please reuse metrics2.util.Servers#parse.
          5. The sparse/dense logic in #putMetrics can be improved a bit: the cache is looked up twice in dense mode. You can have #update method return the record once in dense mode.
          6. Ganglia treats a metric as counter if slope is positive and gauge for anything else. Having to specify slope explicitly in the conf for every counter is a tedious chore we can avoid. This is a deficiency in the existing metrics1 implementation as well.
          Show
          Luke Lu added a comment - Thanks for the nice patch, Priyo! Here is a preliminary review: Like I mentioned in our email exchange, I'm hesitant to make the impl classes public and use them directly in the sink. It breaks abstraction that makes certain later optimizations impossible. A better approach would be using the builtin visitor interface. That said, it might be OK in 0.20.20x series, as they're mostly in maintenance mode. In the #init, please log the exception instead of printStackTrace. The #getTag method is only used to get the context of the record, which is unnecessary, as the record has a #context method. The #parseSocket method is unnecessary, please reuse metrics2.util.Servers#parse. The sparse/dense logic in #putMetrics can be improved a bit: the cache is looked up twice in dense mode. You can have #update method return the record once in dense mode. Ganglia treats a metric as counter if slope is positive and gauge for anything else. Having to specify slope explicitly in the conf for every counter is a tedious chore we can avoid. This is a deficiency in the existing metrics1 implementation as well.
          Hide
          Priyo Mustafi added a comment -

          I have done some testing with 3.0 but not testing on 3.1 as we don't have 3.1 on our installation. I couldn't ascertain whether Ganglia can handle sparse updates so kept the default option as dense updates. If somebody can confirm that it can handle, sparse, then I can remove the logic for caching and doing dense updates.

          Show
          Priyo Mustafi added a comment - I have done some testing with 3.0 but not testing on 3.1 as we don't have 3.1 on our installation. I couldn't ascertain whether Ganglia can handle sparse updates so kept the default option as dense updates. If somebody can confirm that it can handle, sparse, then I can remove the logic for caching and doing dense updates.
          Hide
          Luke Lu added a comment -

          I think support for Ganglia 3.1.x is suffice... as it's easy to upgrade ganglia from 3.0.x to 3.1.x.

          Thanks. That's good to know.

          I'll try to provide a patch for 204+ and a small hadoop-ganglia31-0.20.203.jar, which can be put into the lib directory of the 0.20.203 release (as is, no patch for 203 is needed), hopefully, sometime this week, to appease the wrath of Allen

          Show
          Luke Lu added a comment - I think support for Ganglia 3.1.x is suffice... as it's easy to upgrade ganglia from 3.0.x to 3.1.x. Thanks. That's good to know. I'll try to provide a patch for 204+ and a small hadoop-ganglia31-0.20.203.jar, which can be put into the lib directory of the 0.20.203 release (as is, no patch for 203 is needed), hopefully, sometime this week, to appease the wrath of Allen
          Hide
          Bob Liu added a comment -

          Hello Luke,

          I think support for Ganglia 3.1.x is suffice... as it's easy to upgrade ganglia from 3.0.x to 3.1.x.

          By the way, any ETA as to when the ganglia plugins will be available for hadoop-20.203 using metrics v2?

          Show
          Bob Liu added a comment - Hello Luke, I think support for Ganglia 3.1.x is suffice... as it's easy to upgrade ganglia from 3.0.x to 3.1.x. By the way, any ETA as to when the ganglia plugins will be available for hadoop-20.203 using metrics v2?
          Hide
          Luke Lu added a comment -

          Do people care about Gangalia 3.0.x? Would Ganglia 3.1+ support suffice?

          Show
          Luke Lu added a comment - Do people care about Gangalia 3.0.x? Would Ganglia 3.1+ support suffice?
          Hide
          Allen Wittenauer added a comment -

          Changing this to accurately reflect the world outside Yahoo!.

          Show
          Allen Wittenauer added a comment - Changing this to accurately reflect the world outside Yahoo!.
          Hide
          Luke Lu added a comment -

          My limited knowledge with gmond wire format is from a quick scan of the GangliaContext*.java source.

          I have a question that I hope Ganglia experts can answer: the wire format seems sparse, in that it contains full key value pairs. I wonder if the update can be sparse as well, i.e., the metrics that haven't changed since the last snapshot doesn't need to be sent to gmond as well. The metrics2 system allows sparse update to reduce object/bandwidth usage.

          If the update can be sparse, it quite straight forward to adapt FileSink and GangliaContext code. OTOH, If only dense update is allowed, o.a.h.metrics2.util.MetricsCache can be used.

          Show
          Luke Lu added a comment - My limited knowledge with gmond wire format is from a quick scan of the GangliaContext*.java source. I have a question that I hope Ganglia experts can answer: the wire format seems sparse , in that it contains full key value pairs. I wonder if the update can be sparse as well, i.e., the metrics that haven't changed since the last snapshot doesn't need to be sent to gmond as well. The metrics2 system allows sparse update to reduce object/bandwidth usage. If the update can be sparse, it quite straight forward to adapt FileSink and GangliaContext code. OTOH, If only dense update is allowed, o.a.h.metrics2.util.MetricsCache can be used.

            People

            • Assignee:
              Priyo Mustafi
              Reporter:
              Luke Lu
            • Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development