[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15763914#comment-15763914 ] Chetan Mehrotra commented on OAK-4978: -- Opened OAK-5351 for that > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.5.16, 1.6 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15750710#comment-15750710 ] Francesco Mari commented on OAK-4978: - I think It makes sense to have only one registration of {{RevisionGCMBean}} at the moment. I will not be able to take care of this before next week. Can you log an issue and assign it to me, please? > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.5.16, 1.6 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15750371#comment-15750371 ] Chetan Mehrotra commented on OAK-4978: -- [~frm] Thinking about complete flow for use of this feature I realized it would require some changes in other parts. See OAK-5309 for details. So untill that part is resolved (which may take time!) I was thinking to make a slight change here so as to have a possibility of a workaround. In case role is specified we can avoid registering a {{RevisionGCMBean}} implementation for now and have only {{SegmentRevisionGC}} be exposed. From my reading of flow {{SegmentRevisionGC#startRevisionGC}} == {{RevisionGCMBean#startRevisionGC}} (except of status support). So a user if required can still perform GC and also it would not cause issue with RevisionGC of primary store (say DocumentNodeStore) in existing setups. Right now with current impl it would affect RevisionGC of primary store and RepositoryManager would fail due to presence of multiple implementation of {{RevisionGCMBean}} wdyt? > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.5.16, 1.6 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15748916#comment-15748916 ] Robert Munteanu commented on OAK-4978: -- Works well for me now, thanks! > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.5.16, 1.6 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15748783#comment-15748783 ] Francesco Mari commented on OAK-4978: - [~rombert], the error you are experiencing should be fixed at r1774291. > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.5.16, 1.6 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15748710#comment-15748710 ] Francesco Mari commented on OAK-4978: - This might be related to the colon in the role property. The role should be escaped when used to augment the name of an MBean. > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.5.16, 1.6 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15748404#comment-15748404 ] Robert Munteanu commented on OAK-4978: -- [~frm] - thanks for looking into this. With latest oak trunk and two configured SegmentNodeStoreFactory instances the registration fails, root cause seems to be {noformat}14.12.2016 16:00:11.107 *ERROR* [FelixStartLevel] org.apache.jackrabbit.oak-segment-tar [org.apache.jackrabbit.oak.segment.SegmentNodeStoreFactory(149)] The activate method has thrown an exception (java.lang.Ill egalArgumentException: javax.management.MalformedObjectNameException: Invalid character `:' in value) java.lang.IllegalArgumentException: javax.management.MalformedObjectNameException: Invalid character `:' in value at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:97) at org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.registerSegmentStore(SegmentNodeStoreService.java:421) at org.apache.jackrabbit.oak.segment.SegmentNodeStoreFactory.activate(SegmentNodeStoreFactory.java:113) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.felix.scr.impl.inject.BaseMethod.invokeMethod(BaseMethod.java:224) at org.apache.felix.scr.impl.inject.BaseMethod.access$500(BaseMethod.java:39) at org.apache.felix.scr.impl.inject.BaseMethod$Resolved.invoke(BaseMethod.java:617) at org.apache.felix.scr.impl.inject.BaseMethod.invoke(BaseMethod.java:501) at org.apache.felix.scr.impl.inject.ActivateMethod.invoke(ActivateMethod.java:302) at org.apache.felix.scr.impl.inject.ActivateMethod.invoke(ActivateMethod.java:294) at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:297) at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:108) at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:906) at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:879) at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:748) at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:674) at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:429) at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657) at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341) at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:403) at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:278) at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:259) at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:232) at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:916) at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:835) at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:517) at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541) at org.apache.felix.framework.Felix.startBundle(Felix.java:2172) at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1371) at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) at java.lang.Thread.run(Thread.java:745) Caused by: javax.management.MalformedObjectNameException: Invalid character `:' in value at javax.management.ObjectName.parseValue(ObjectName.java:974) at javax.management.ObjectName.checkValue(ObjectName.java:1006) at javax.management.ObjectName.construct(ObjectName.java:725) at
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15747978#comment-15747978 ] Robert Munteanu commented on OAK-4978: -- Great to hear, thanks! > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.6, 1.5.16 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15747975#comment-15747975 ] Chetan Mehrotra commented on OAK-4978: -- [~rombert] That would be fixed with current patch in work > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.6, 1.5.16 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15747972#comment-15747972 ] Chetan Mehrotra commented on OAK-4978: -- [~frm] One more improvement we can do here is to have {{role}} added as part of JMX Name attributes. This would simplify the lookup of such MBeans. We can still continue to append the role to name so as to allow existing code to work fine {noformat} mbeans.add(registerMBean( whiteboard, CacheStatsMBean.class, stringCacheStats, CacheStats.TYPE, appendRole(stringCacheStats.getName(), role), ImmutableMap.of("role", role) )); {noformat} wdyt? > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.6, 1.5.16 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15747953#comment-15747953 ] Robert Munteanu commented on OAK-4978: -- [~frm], [~chetanm] - the patch committed in r1774011 breaks the setup of the MultiplexingNodeStoreService, since it registers multiple NodeStore instances. Can you please take this scenario into account as well? > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.6, 1.5.16 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15747923#comment-15747923 ] Chetan Mehrotra commented on OAK-4978: -- +1. Looks fine now > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.6, 1.5.16 > > Attachments: OAK-4978-02.patch, OAK-4978-03.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15747310#comment-15747310 ] Chetan Mehrotra commented on OAK-4978: -- Looks good. Few comments * Disable dispatch changes here also if its not primary {code} if (isStandbyInstance(context)) { segmentNodeStoreBuilder.dispatchChanges(false); } {code} * SharedDataStoreUtils - Logic related to initializing the clusterId for SharedDataStore support should also be locked for primary * Include the role info in above log so that log is not ambiguous around which store is being used {code} log.info("SegmentNodeStore initialized"); {code} * Repository discriptors registration - Looking at SegmentNodeStoreFactory it looks like there is an explicit option for registering the descriptors. So this logic need not be locked for primary store but be controlled via {{descriptors}} parameter value {code} if (descriptors && isPrimarySegmentStore(role)) { {code} * May be add {{role}} as a service property while exposing the {{SegmentStoreProvider}} {code} // Register a factory service to expose the FileStore registrations.register(asCloseable(whiteboard.register( SegmentStoreProvider.class, new DefaultSegmentStoreProvider(store), Collections.emptyMap() ))); {code} > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.6, 1.5.16 > > Attachments: OAK-4978-02.patch, OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15745351#comment-15745351 ] Chetan Mehrotra commented on OAK-4978: -- [~frm] Couple of things to ensure with this feature. When SegmentNodeStore is not the "primary" store then below features must not be enabled # Observation Support - ObserverTracker should not be enabled as Observers should only be registered with primary store. So dispatchChanges should be false # MarkSweepGarbageCollector - It should not expose the BlobStore GC support as those are to be handled by primary store # Checkpoint Support # Discriptors # NodeStore - It should not register a NodeStore instance So if {{role}} is not null then above features should be disable > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Francesco Mari > Fix For: 1.6, 1.5.16 > > Attachments: OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15729176#comment-15729176 ] Alex Parvulescu commented on OAK-4978: -- [~frm] it would be good if you could take a look at the _SegmentNodeStoreService_ parts, as it is in a way a continuation of OAK-5223. [~chetanm] I'll be on PTO, so I'm assigning this to you for followup. > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Alex Parvulescu > Fix For: 1.6, 1.5.16 > > Attachments: OAK-4978.patch > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15682772#comment-15682772 ] Chetan Mehrotra commented on OAK-4978: -- +1. Have the factory call SegmentNodeStoreService#activate. Only downside for now would be that metatype for the factory would not be rich. But that should be ok. This we can later address via new typed config support [1]. In doing this we should ensure that any singleton service registered (like JMX MBeans) etc should be scoped to the role so as to allow multiple such services to be registered. [1] http://njbartlett.name/2015/08/17/osgir6-declarative-services.html > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Alex Parvulescu > Fix For: 1.6 > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory
[ https://issues.apache.org/jira/browse/OAK-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15682760#comment-15682760 ] Alex Parvulescu commented on OAK-4978: -- the amount of overlap in configs needed here is scary. could we remove all properties from the factory and in some way have the {{SegmentNodeStoreFactory}} call the {{SegmentNodeStoreService#activate}} method with the current {{context}} and possibly some tweaked properties? this way all segment store stuff would remain in the segment service and the factory would just be responsible for activation of stores without caring too much about the specifics. > Expose maintainence related MBeans for Segment NodeStores created via factory > - > > Key: OAK-4978 > URL: https://issues.apache.org/jira/browse/OAK-4978 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar, segmentmk >Reporter: Chetan Mehrotra >Assignee: Alex Parvulescu > Fix For: 1.6 > > > With OAK-4655 support was added to initializing multiple segment nodestores > and have them exposed via {{NodeStoreProvider}} ties to different roles. > In some cases such stores are immutable and do not require any maintenance. > However for other cases maintenance is required. So we would need to expose > various MBean which allow such maintenance activities. -- This message was sent by Atlassian JIRA (v6.3.4#6332)