[ 
https://issues.apache.org/jira/browse/IGNITE-7616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16575640#comment-16575640
 ] 

David Harvey commented on IGNITE-7616:
--------------------------------------

The other  issue is we need a IgniteStripedThreadPoolExecutorMXBeanAdapter.  
The general theme seems to be to have these adapters be standalone, and not 
require that the class they wrap be aware of them (i.e., reference them).    

What I'm currently doing in IgniteStripedThreadPoolExecutorMXBeanAdapter 
enumerating the stripes, creating an ThreadPoolMXBeanAdapter for each, and 
summing values.   Either IgniteStripedThreadPoolExecutor can, given a stripe 
number, return an ExecutorService or it could return a ThreadPoolMXBeanAdapter. 
  The former removes the obfuscation that Executors.newSingleThreadExecutor() 
tried to impose for users of IgniteStripedThreadPoolExecutor, but the latter 
makes IgniteStripedThreadPoolExecutor depend on ThreadPoolMXBeanAdapter.     
I've opted for the former.

> GridDataStreamExecutor and GridCallbackExecutor JMX beans return incorrect 
> values due to invalid interface registration.
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-7616
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7616
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 2.4
>            Reporter: Max Shonichev
>            Assignee: David Harvey
>            Priority: Major
>              Labels: jmx
>             Fix For: 2.7
>
>
> Two of newly added management beans as a result of implementing feature 
> request https://issues.apache.org/jira/browse/IGNITE-7217 have bugs:
>  # GridDataStreamExecutor is registered as conforming to ThreadPoolMXBean 
> interface, though actually it is an incompatible StripedExecutor. 
>  # GridCallbackExecutor is registered as conforming to ThreadPoolMXBean 
> interface, though actually it is an incompatible 
> IgniteStripedThreadPoolExecutor.
>  # ThreadPoolMXBeanAdapter checks whether adapted instance is 
> ThreadPoolExecutor, and as interfaces are incompatible, most of the JMX 
> attributes of GridCallbackExecutor and GridDataStreamExecutor are returned as 
> -1 or null.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to