[
https://issues.apache.org/jira/browse/SLING-7830?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16585728#comment-16585728
]
Carsten Ziegeler commented on SLING-7830:
-----------------------------------------
Got it, right - let's forget about the details how the string actually will
look like and how the comparison is done. Let's assume there are some instances
and the leaderElectionId starts with "1_" for all of them.
Now a new instance joins with the leaderElectionId starting with "0_" - nothing
else happens.
>From the discussion so far I understand that "0_" will become the new leader
>as the leaderElectionId is lowest.
And this would cause duplicate events for topology changes?
> Defined leader switch
> ---------------------
>
> Key: SLING-7830
> URL: https://issues.apache.org/jira/browse/SLING-7830
> Project: Sling
> Issue Type: Improvement
> Components: Discovery
> Reporter: Carsten Ziegeler
> Priority: Major
>
> The current leader selection is based on startup time and sling id (mainly)
> and is stable across changed in the topology for as long as the leader is up
> and running.
> However there are use cases like blue green deployment where new instances
> with a new version are started and taking over the functionality. However
> with the current discovery setup, the leader would still be one of the
> instances with the old version.
> With a new deployed version, tasks currently bound to the leader should run
> on the new version.
> Therefore the leader needs to switch and stay the leader (until it dies).
> We probably need an additional criteria for the leader selection
> /cc [~egli]
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)