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

Evgeny Stanilovsky updated IGNITE-23636:
----------------------------------------
    Fix Version/s: 3.2
                       (was: 3.1)

> Investigate refactoring of DisasterRecoveryManager
> --------------------------------------------------
>
>                 Key: IGNITE-23636
>                 URL: https://issues.apache.org/jira/browse/IGNITE-23636
>             Project: Ignite
>          Issue Type: Task
>            Reporter: Mirza Aliev
>            Assignee: Mirza Aliev
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.2
>
>
> h3. Motivation
> Currently {{DisasterRecoveryManager}} is placed in table module. For the 
> purpose of the 
> [IEP-131|https://cwiki.apache.org/confluence/display/IGNITE/IEP-131%3A+Partition+Majority+Unavailability+Handling],
>  {{DisasterRecoveryManager#resetPartitions}} must be available from 
> {{DistributionZoneManager}}, but {{DisasterRecoveryManager}} depends on 
> {{DisasterRecoveryManager}}, but, worst of all, depends on {{TableManager}}.
> We need to decide how we plan to refactor {{DisasterRecoveryManager}} so it 
> could be possible to  use {{DisasterRecoveryManager#resetPartitions}} in 
> {{DistributionZoneManager}}
> h3. Implementation details
> We need to preserve logic from {{DisasterRecoveryManager#resetPartitions}} 
> which uses requests with {{operationIds}}, {{RECOVERY_TRIGGER_KEY}} and 
> writing such requests to MS, and also all logic with setting force pending
> h3. Definition of done
> We have a plan of a refactoring, so it is possible  to use 
> {{DisasterRecoveryManager#resetPartitions}} in {{DistributionZoneManager}}, 
> and all logic from this method is preserved without any redundant code 
> duplication. As a result, ticket for the development must be created.



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

Reply via email to