[
https://issues.apache.org/jira/browse/IGNITE-22292?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mikhail Efremov updated IGNITE-22292:
-------------------------------------
Description:
*Description*
The main goal is to remove {{LogSyncer}} from {{Loza}} and especially method
{{{}Loza#getLogSyncer{}}}.
*Motivation*
# There is an intention to hide all raft-specific entities behind replication
layer and log syncer is an entity that sticking out. Besides it's only needs
for engines and may be passed though {{IgniteImpl}} as an ignite component.
# All current implementations except {{DefaultLogStorageFactory}} are not
implements properly sync method at all that looks like the reason for interface
segregation between {{LogSyncer}} and {{LogStorageFactory.}}
*Definition of done*
# There no more {{Loza#getLogSyncer}} method and its' calls.
# {{LogSyncer}} and {{LogStorageFactory}} interfaces are separated.
# {{LogSyncer}} creates and injects into engines as {{IgniteComponent}} in
{{{}IgniteImpl{}}}.
was:
*Description*
The main goal is to remove {{LogSyncer}} from {{Loza}} and especially method
{{{}Loza#getLogSyncer{}}}.
*Motivation*
# There is an intention to hide all raft-specific entities behind replication
layer and log syncer is an entity that sticking out. Besides it's only needs
for engines and may be passed though {{IgniteImpl}} as an ignite component.
# All current implementations except {{DefaultLogStorageFactory}} are not
implements properly sync method at all that looks like the reason for interface
segregation between {{LogSyncer}} and {{LogStorageFactory.}}
*Definition of done*
# There no more {{Loza#getLogSyncer}} method and its' calls.
# {{LogSyncer}} and {{LogStorageFactory}} interfaces are separated.{{{}
{}}}
# {{LogSyncer}} creates and injects into engines as {{IgniteComponent}} in
{{{}IgniteIml{}}}.
> Moving LogSyncer from Loza and RaftServer and pass it to usages as
> IgniteComponent
> ----------------------------------------------------------------------------------
>
> Key: IGNITE-22292
> URL: https://issues.apache.org/jira/browse/IGNITE-22292
> Project: Ignite
> Issue Type: Improvement
> Reporter: Mikhail Efremov
> Assignee: Mikhail Efremov
> Priority: Major
> Labels: ignite-3
>
> *Description*
> The main goal is to remove {{LogSyncer}} from {{Loza}} and especially method
> {{{}Loza#getLogSyncer{}}}.
> *Motivation*
> # There is an intention to hide all raft-specific entities behind
> replication layer and log syncer is an entity that sticking out. Besides it's
> only needs for engines and may be passed though {{IgniteImpl}} as an ignite
> component.
> # All current implementations except {{DefaultLogStorageFactory}} are not
> implements properly sync method at all that looks like the reason for
> interface segregation between {{LogSyncer}} and {{LogStorageFactory.}}
> *Definition of done*
> # There no more {{Loza#getLogSyncer}} method and its' calls.
> # {{LogSyncer}} and {{LogStorageFactory}} interfaces are separated.
> # {{LogSyncer}} creates and injects into engines as {{IgniteComponent}} in
> {{{}IgniteImpl{}}}.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)