Uploaded image for project: 'WildFly Core'
  1. WildFly Core
  2. WFCORE-1716

JMX domains jboss.as and jboss.as.expr do not always correctly handle propertly list patters in queryMBeans and queryNames


    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 3.0.0.Alpha6
    • None
    • JMX
    • None

      The ObjectName filtering logic added for WFLY-3161 does not handle queryMBeans and queryNames correctly in some cases where the ObjectName param to the method is a property list pattern (i.e. one that includes a simple '*' at the end of the list of properties, meaning "all other properties besides previous ones whose keys were specifically enumerated, match".)

      The problem occurs when the the ObjectName does specifically include some keys, and those keys don't correspond to the final elements of the related management resource's PathAddress. As the RootResourceIterator walks the management resource tree, ModelControllerMBeanHelper.ObjectNameMatchResourceAction will not identify the parent resources of children that should match as matching, with the result that the iterator will not descend into that part of the tree and the children will not be matched. For example, this query will return an empty set because the /socket-binding-group=standard-sockets parent will not be matched, preventing checks of the socket-binding-group children.

      Set<ObjectInstance> instances = connection.queryMBeans(createObjectName("jboss.as:socket-binding=*,*"), null);

            bstansbe@redhat.com Brian Stansberry
            bstansbe@redhat.com Brian Stansberry
            0 Vote for this issue
            2 Start watching this issue