[ https://issues.apache.org/jira/browse/OAK-3488?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael Marth updated OAK-3488: ------------------------------- Fix Version/s: (was: 1.4) 1.6 > LastRevRecovery for self async? > ------------------------------- > > Key: OAK-3488 > URL: https://issues.apache.org/jira/browse/OAK-3488 > Project: Jackrabbit Oak > Issue Type: Bug > Components: documentmk > Reporter: Julian Reschke > Assignee: Marcel Reutegger > Labels: resilience > Fix For: 1.6 > > Attachments: OAK-3488.patch > > > Currently, when a cluster node starts and discovers that it wasn't properly > shutdown, it first runs the complete LastRevRecovery and only continues > startup when done. > However, when it fails to acquire the recovery lock, which implies that a > different cluster node is already running the recovery on its behalf, it > simply skips recovery and continues startup? > So what is it? Is running the recovery before proceeding critical or not? If > it is, this code in {{LastRevRecoveryAgent}} needs to change: > {code} > //TODO What if recovery is being performed for current clusterNode by > some other node > //should we halt the startup > if(!lockAcquired){ > log.info("Last revision recovery already being performed by some > other node. " + > "Would not attempt recovery"); > return 0; > } > {code} > If it's not critical, we may want to run the recovery always asynchronously. > cc [~mreutegg] and [~chetanm] -- This message was sent by Atlassian JIRA (v6.3.4#6332)