You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Denis Mekhanikov (JIRA)" <ji...@apache.org> on 2017/12/06 15:23:00 UTC

[jira] [Created] (IGNITE-7125) Cluster metrics for a single node differ from local metrics

Denis Mekhanikov created IGNITE-7125:
----------------------------------------

             Summary: Cluster metrics for a single node differ from local metrics
                 Key: IGNITE-7125
                 URL: https://issues.apache.org/jira/browse/IGNITE-7125
             Project: Ignite
          Issue Type: Bug
    Affects Versions: 2.3
            Reporter: Denis Mekhanikov


Some metrics, that perform aggregation of multiple values, have different meanings for a local node and for a cluster. Local metrics perform aggregation over time, but cluster metrics – over nodes in the cluster. As a result, you can get different values of local metrics and cluster metrics, when there is only one node in the cluster.

Here is a reproducer:
{code}
public class ExampleNodeStartup {
    public static void main(String[] args) throws Exception {
        Ignite ignite = Ignition.start();

        while (true) {
            ClusterMetrics locMetrics = ignite.cluster().localNode().metrics();
            ClusterMetrics clusterMetrics = ignite.cluster().metrics();

            System.out.println("averageCpuLoad: " +
                "local=" + locMetrics.getAverageCpuLoad() +
                "; cluster=" + clusterMetrics.getAverageCpuLoad());
            System.out.println("maximumThreadCount: " +
                "local=" + locMetrics.getMaximumThreadCount() +
                "; cluster=" + clusterMetrics.getMaximumThreadCount());

            Thread.sleep(200);
        }
    }
}
{code}

After some time values begin to differ.

All {{ClusterMetrics#getMaximum*}} and {{ClusterMetrics#getAverage*}} metrics seem to have the same problem.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)