[ 
https://issues.apache.org/jira/browse/OAK-2265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14219312#comment-14219312
 ] 

Marcel Reutegger commented on OAK-2265:
---------------------------------------

I think this is an interesting idea, but I'm also not sure if this makes sense 
in general. I tend to agree with Michael that it might be better to just throw 
a RepositoryException if there is a temporary network issue or a MongoDB 
process dies. In many cases these interruptions should be temporary and e.g. 
MongoDB would elect a new primary. I'm not sure bouncing the entire stack is 
the best option is this case.

If we do want to support this behavior, I would rather prefer an external 
system to perform this monitoring an controlling of services. One example is 
[Pacemaker|http://clusterlabs.org/wiki/Main_Page].

> DocumentNodeStore service should go away if MongoDB becomes unavailable
> -----------------------------------------------------------------------
>
>                 Key: OAK-2265
>                 URL: https://issues.apache.org/jira/browse/OAK-2265
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>            Reporter: Bertrand Delacretaz
>
> Stopping the MongoDB backend that a Sling instance is using via the 
> DocumentNodeStore service should cause that OSGi service to be unregistered.
> Currently the service stays registered even if MongoException$Network is 
> thrown when trying to access the MongoDB backend.
> The code that manages the service should ping the backend and 
> register/unregister the DocumentNodeStore to follow the backend's 
> availablity. This will allow other services that depend on DocumentNodeStore 
> to restart correctly once MongoDB is available again.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to