Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-6702

Improve cold standby resiliency to incoherent configs

    XMLWordPrintableJSON

    Details

      Description

      In order to correctly configure cold standby there are two OSGi configurations that need to be provided. Among other settings, org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.config needs standby=B"true" and org.apache.jackrabbit.oak.segment.standby.store.StandbyStoreService.config needs mode="standby". The problem is that sometimes we have mode="standby" in StandbyStoreService and standby=B"false" in SegmentNodeStoreService which leads to starting a problematic standby instance (with primary behaviour enabled, e.g. indexing, etc.). This problem stems from the fact that there are two components whose configuration should be coordinated. Proposals to mitigate this:

      1. Keep the mode="standby", but merge the configuration of StandbyStoreService in the one for SegmentNodeStoreService and eliminate StandbyStoreService altogether
      2. StandbyStoreService should derive mode="standby" from "standby=B"true" in SegmentNodeStoreService
      3. SegmentNodeStoreService should derive "standby=B"true" from mode="standby" in StandbyStoreService even if this is backwards when compared to how the synchronization currently happens, with StandbyStoreService waiting for for a proper initialisation of SegmentNodeStoreService
      4. Make StandbyStoreService configuration mandatory, but require a mode="off" setting. This way the removal of standby=B"true" from SegmentNodeStoreService would be guaranteed and any synchronization between the two components would be avoided.

      /cc Francesco Mari, Valentin Olteanu, Michael Dürig

        Attachments

          Activity

            People

            • Assignee:
              adulceanu Andrei Dulceanu
              Reporter:
              adulceanu Andrei Dulceanu
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: