[
https://issues.apache.org/jira/browse/IGNITE-18741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vyacheslav Koptilin updated IGNITE-18741:
-----------------------------------------
Labels: iep-101 ignite-3 (was: ignite-3)
> Implement PD-side logic for an initialization phase of group lease management
> -----------------------------------------------------------------------------
>
> Key: IGNITE-18741
> URL: https://issues.apache.org/jira/browse/IGNITE-18741
> Project: Ignite
> Issue Type: Improvement
> Reporter: Alexander Lapin
> Assignee: Vladislav Pyatkov
> Priority: Major
> Labels: iep-101, ignite-3
> Attachments: PlacementDriverManagerClasses.drawio.png, Снимок экрана
> от 2023-02-07 15-49-29.png, Снимок экрана от 2023-02-07 16-23-51.png
>
> Time Spent: 3h 40m
> Remaining Estimate: 0h
>
> h3. Motivation
> There are two phases of lease management:
> * *initialization* - _new_ leases management. // marked with greed
> * *maintenance* - already existing leases management. // marked with orange
> !Снимок экрана от 2023-02-07 15-49-29.png!
> Given ticket is about new leases management on the placement driver side(the
> active actor one). So it covers the *flow* from the detection of a
> replication group appearance in the logical topology *to* sending leaseGrant
> message to the primary replica candidate.
> h3. Definition of Done
> # All triggers related to new primary replica candidate appearance are
> covered.
> # Placement driver starts primary replica candidate promotion event loop.
> h3. Implementation Notes
> 1.Following events should be considered as triggers related to new primary
> replica candidate appearance:
> * MetaStorage based logical topology updates. We use MS and not CMG events
> here in order to linearize logical topology updates with other configuration
> events. Please pay attention that DistributionZone logic is responsible for
> population ms with logical topology, following key
> DISTRIBUTION_ZONE_LOGICAL_TOPOLOGY_KEY is used and yep we may rename it.
> * Replication group assignment updates.
> As usual, we should first register listeners and then initialize the flow
> according to already existing assignments and logical topology.
> 2. Following steps inside primary replica candidate promotion event loop are
> expected
> !Снимок экрана от 2023-02-07 16-23-51.png!
> *UPD:*
> During implementation, the issue was reformulated and slightly redesigned. By
> the redesign result, a class diagram was drawn.
> !PlacementDriverManagerClasses.drawio.png!
--
This message was sent by Atlassian Jira
(v8.20.10#820010)