davsclaus opened a new pull request, #26051:
URL: https://github.com/apache/camel/pull/26051

   ## Backport of #26038
   
   Cherry-pick (`-x`) of #26038 onto `camel-4.18.x`.
   
   ⚠️ **Not a straight cherry-pick — required manual conflict resolution**, so 
this backport should get a normal review (do not merge as-is).
   
   **Conflict:** a single field-declaration hunk in 
`JmxManagementLifecycleStrategy.java`. `main` has `managedThreadPools` typed as 
`Map<Object, Object>` (an unrelated divergence) whereas `camel-4.18.x` has 
`Map<ThreadPoolExecutor, Object>`. Resolution kept 4.18.x's existing type and 
added the new `managedRouteGroups` field. All other hunks (onRoutesAdd guard + 
`computeIfAbsent`, onRoutesRemove `remove`, doStop `clear`) and both test files 
applied cleanly. The functional change is identical to the merged PR.
   
   **Original PR:** #26038
   **Original author:** @davsclaus
   **Target branch:** `camel-4.18.x`
   
   ### Original description
   
   Fixes CAMEL-24590: route group MBean performance statistics did not 
aggregate across the group's member routes — they reported the counters of a 
single arbitrary member route. `getManagedObjectForRouteGroup` created a new 
`ManagedRouteGroup` per call, so each member route's composite counter wired to 
a different instance while only the first-registered one became the JMX MBean. 
Cache a single `ManagedRouteGroup` per group name so all member routes share 
one counter instance, producing a true group-wide total. Evicted when the 
group's last route is removed and cleared on stop.
   
   _Claude Code on behalf of davsclaus_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to