jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig (JIRA) <j...@apache.org>
Subject [jira] [Updated] (OAK-6702) Improve cold standby resiliency to incoherent configs
Date Mon, 04 Dec 2017 10:12:00 GMT

     [ https://issues.apache.org/jira/browse/OAK-6702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Michael Dürig updated OAK-6702:
-------------------------------
    Fix Version/s:     (was: 1.8)

> Improve cold standby resiliency to incoherent configs
> -----------------------------------------------------
>
>                 Key: OAK-6702
>                 URL: https://issues.apache.org/jira/browse/OAK-6702
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: segment-tar, tarmk-standby
>    Affects Versions: 1.7.0
>            Reporter: Andrei Dulceanu
>            Assignee: Andrei Dulceanu
>              Labels: cold-standby, resilience
>
> 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:
> # Keep the {{mode="standby"}}, but merge the configuration of {{StandbyStoreService}}
in the one for {{SegmentNodeStoreService}} and eliminate {{StandbyStoreService}} altogether
> # {{StandbyStoreService}} should derive {{mode="standby"}} from {{"standby=B"true"}}
in {{SegmentNodeStoreService}}
> # {{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}}
> # 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  [~frm], [~volteanu], [~mduerig]



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message