You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Aleksandr Polovtcev (Jira)" <ji...@apache.org> on 2022/11/25 12:48:00 UTC

[jira] [Updated] (IGNITE-18265) Change Raft modules structure

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

Aleksandr Polovtcev updated IGNITE-18265:
-----------------------------------------
    Description: 
Current Raft-related modules' structure has a couple of issues:
1. {{ignite-raft-client}} module is not located in {{internal}} module. Also it is intended to be used as an API module, which is not reflected in its name.
2. Classes from {{ignite-raft}} module are used directly, this adds unnecessary dependencies. The other problem that {{jraft}} classes leak to other modules.

It is proposed to apply the following changes:
1. Rename {{ignite-raft-client}} to {{ignite-raft-api}};
2. Move all classes in {{ignite-raft-api}} to the {{internal}} package;
3. Extract API-related classes from {{ignite-raft}} to {{ignite-raft-api}};
4. Get rid of any {{jraft}} classses' usages outside of {{ignite-raft}} module. New API alternatives should be created, if necessary.

> Change Raft modules structure
> -----------------------------
>
>                 Key: IGNITE-18265
>                 URL: https://issues.apache.org/jira/browse/IGNITE-18265
>             Project: Ignite
>          Issue Type: Task
>            Reporter: Aleksandr Polovtcev
>            Assignee: Aleksandr Polovtcev
>            Priority: Major
>              Labels: ignite-3
>
> Current Raft-related modules' structure has a couple of issues:
> 1. {{ignite-raft-client}} module is not located in {{internal}} module. Also it is intended to be used as an API module, which is not reflected in its name.
> 2. Classes from {{ignite-raft}} module are used directly, this adds unnecessary dependencies. The other problem that {{jraft}} classes leak to other modules.
> It is proposed to apply the following changes:
> 1. Rename {{ignite-raft-client}} to {{ignite-raft-api}};
> 2. Move all classes in {{ignite-raft-api}} to the {{internal}} package;
> 3. Extract API-related classes from {{ignite-raft}} to {{ignite-raft-api}};
> 4. Get rid of any {{jraft}} classses' usages outside of {{ignite-raft}} module. New API alternatives should be created, if necessary.



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