[jira] [Commented] (OAK-4978) Expose maintainence related MBeans for Segment NodeStores created via factory

2016-12-20 Thread Chetan Mehrotra (JIRA)

[ 
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

2016-12-14 Thread Francesco Mari (JIRA)

[ 
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

2016-12-14 Thread Chetan Mehrotra (JIRA)

[ 
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

2016-12-14 Thread Robert Munteanu (JIRA)

[ 
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

2016-12-14 Thread Francesco Mari (JIRA)

[ 
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

2016-12-14 Thread Francesco Mari (JIRA)

[ 
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

2016-12-14 Thread Robert Munteanu (JIRA)

[ 
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

2016-12-14 Thread Robert Munteanu (JIRA)

[ 
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

2016-12-14 Thread Chetan Mehrotra (JIRA)

[ 
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

2016-12-14 Thread Chetan Mehrotra (JIRA)

[ 
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

2016-12-14 Thread Robert Munteanu (JIRA)

[ 
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

2016-12-14 Thread Chetan Mehrotra (JIRA)

[ 
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

2016-12-13 Thread Chetan Mehrotra (JIRA)

[ 
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

2016-12-13 Thread Chetan Mehrotra (JIRA)

[ 
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

2016-12-07 Thread Alex Parvulescu (JIRA)

[ 
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

2016-11-20 Thread Chetan Mehrotra (JIRA)

[ 
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

2016-11-20 Thread Alex Parvulescu (JIRA)

[ 
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)