You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Carsten Ziegeler (Jira)" <ji...@apache.org> on 2023/05/06 10:32:00 UTC

[jira] [Resolved] (SLING-3613) [discovery] verify heartbeat config at connect time, reject if diffs

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

Carsten Ziegeler resolved SLING-3613.
-------------------------------------
    Resolution: Won't Fix

> [discovery] verify heartbeat config at connect time, reject if diffs
> --------------------------------------------------------------------
>
>                 Key: SLING-3613
>                 URL: https://issues.apache.org/jira/browse/SLING-3613
>             Project: Sling
>          Issue Type: Bug
>          Components: Extensions
>    Affects Versions: Discovery Impl 1.0.8
>            Reporter: Stefan Egli
>            Priority: Major
>
> Discovery.impl's heartbeat mechanism relies on one crucial detail: both ends of a topology connector must have the same configuration wrt interval and timeout. With 'intra-cluster' heartbeats, going to the shared repository, the same is true, but this is guaranteed by the fact that the corresponding OSGi config is also shared by all the instances. With 'inter-cluster' heartbeats though - so called 'connectors' - you could have different instances configured differently. If that's the case, you could end up having an instance ping too slowly and the peer timing out that instance constantly (if its heartbeat timeout is smaller than the incoming heartbeat interval).
> The safest way to handle this is to double-check the config parameters at connector-connect time, and reject connectors if they have different config parameters. That way this will get noticed by administrators way faster than by simply logging an error.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)