[
https://issues.apache.org/jira/browse/OAK-11731?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18043077#comment-18043077
]
Julian Reschke commented on OAK-11731:
--------------------------------------
FWIW, with duplicate namens (illegal):
{code}
05.12.2025 14:47:45.214 *ERROR* [Apache Sling Repository Startup Thread #1]
org.apache.aries.jmx.whiteboard.MBeanHolder register: Failure registering MBean
org.apache.jackrabbit.oak.plugins.index.counter.jmx.NodeCounter@32d6ced6
javax.management.InstanceAlreadyExistsException:
org.apache.jackrabbit.oak:name=nodeCounter,type=NodeCounter
at
java.management/com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:436)
at
java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1855)
at
java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:955)
at
java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:890)
at
java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:320)
at
java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
at
org.apache.aries.jmx.whiteboard.MBeanHolder.register(MBeanHolder.java:114)
[org.apache.aries.jmx.whiteboard:1.2.0]
at
org.apache.aries.jmx.whiteboard.JmxWhiteboardSupport.registerMBean(JmxWhiteboardSupport.java:88)
[org.apache.aries.jmx.whiteboard:1.2.0]
at
org.apache.aries.jmx.whiteboard.Activator$MBeanTracker.addingService(Activator.java:102)
[org.apache.aries.jmx.whiteboard:1.2.0]
at
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:944)
ax.management.InstanceAlreadyExistsExceptiont
org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:872)
at
org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
at
org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:904)
at
org.apache.felix.framework.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:990)
at
org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:838)
at
org.apache.felix.framework.EventDispatcher.fireServiceEvent(EventDispatcher.java:545)
at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4863)
at org.apache.felix.framework.Felix.registerService(Felix.java:3834)
at
org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:328)
at
org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:335)
at
org.apache.jackrabbit.oak.osgi.OsgiWhiteboard.register(OsgiWhiteboard.java:80)
[org.apache.jackrabbit.oak-core-spi:999.9.9]
at
org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:116)
[org.apache.jackrabbit.oak-core-spi:999.9.9]
at
org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:97)
[org.apache.jackrabbit.oak-core-spi:999.9.9]
at
org.apache.jackrabbit.oak.Oak.createNewContentRepository(Oak.java:781)
[org.apache.jackrabbit.oak-core:999.9.9]
at org.apache.jackrabbit.oak.Oak.createContentRepository(Oak.java:691)
[org.apache.jackrabbit.oak-core:999.9.9
{code}
> expose NodeCounter (getEstimatedChildNodeCounts) in JackrabbitNode
> ------------------------------------------------------------------
>
> Key: OAK-11731
> URL: https://issues.apache.org/jira/browse/OAK-11731
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: api, core, jcr
> Reporter: Julian Reschke
> Assignee: Julian Reschke
> Priority: Major
> Fix For: 1.90.0
>
>
> For components attempting to move/copy/delete hierarchies, it would be useful
> for get an estimated child node count either in order to estimate the cost of
> the operation, or by using it to report once the operation is done.
> EDIT: open questions:
> - -how useful is that if we only count for one level? A move or delete will
> actually affect the whole tree-
> - -how do we test on the oak-jcr level? do we need to?-
> - -for now, there's a new (internal) package export from oak-core. can we do
> better?-
> (1) indeed counts in the hierarchy, (2) not pretty, but tested, (3) yes, by
> moving the interface into oak-commons, and just "inherit" in oak-core,
> registering the counter twice.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)