You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Nikolay Izhikov (Jira)" <ji...@apache.org> on 2020/03/25 06:42:00 UTC

[jira] [Resolved] (IGNITE-12767) MetricRegistryMBean is not thread safe

     [ https://issues.apache.org/jira/browse/IGNITE-12767?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nikolay Izhikov resolved IGNITE-12767.
--------------------------------------
    Resolution: Duplicate

> MetricRegistryMBean is not thread safe
> --------------------------------------
>
>                 Key: IGNITE-12767
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12767
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Andrey N. Gura
>            Assignee: Nikolay Izhikov
>            Priority: Major
>              Labels: IEP-35
>             Fix For: 2.8.1
>
>
> {{MetricRegistryMBean}} is not thread safe due to usage of {{histogramNames}} instance of {{HashMap}} class. Changing {{HashMap}} to {{ConcurrentHashMap}} will not help a lot (likely) because method {{MetricUtils.histogramBucketNames()}} uses just {{put}} method ({{putIfAbsent}} will help I believe).
> {{OpenCensusExporterSpi}}  uses the same {{MetricUtils.histogramBucketNames()}} method. But it isn't issue for this exporter because it is single threaded.
> Also {{MetricUtils.histogramBucketNames()}} method is responsible for histogram bucket's name representation. I believe that it is responsibility of metric exporter and this method should be removed from {{MetricUtils}}.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)