[
https://issues.apache.org/jira/browse/IGNITE-13207?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sergey Chugunov updated IGNITE-13207:
-------------------------------------
Summary: Checkpointer code refactoring: Splitting
GridCacheDatabaseSharedManager and Checkpointer (was: Checkpointer code
refactoring: Splitting GridCacheDatabaseSharedManager ant Checkpointer)
> Checkpointer code refactoring: Splitting GridCacheDatabaseSharedManager and
> Checkpointer
> ----------------------------------------------------------------------------------------
>
> Key: IGNITE-13207
> URL: https://issues.apache.org/jira/browse/IGNITE-13207
> Project: Ignite
> Issue Type: Sub-task
> Reporter: Anton Kalashnikov
> Assignee: Anton Kalashnikov
> Priority: Major
> Labels: IEP-47
> Fix For: 2.10
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> The main target of this ticket - providing the possibility to reuse all or
> part of the checkpoint classes in a different way(ex. light-weight checkpoint
> during the defragmentation).
> What was done in this ticket:
> New classes:
> * CheckpointReadWriteLock - encapsulation of specific logic of checkpoint lock
> * CheckpointTimeoutLock - read lock with a timeout which able to trigger the
> new checkpoint if needed
> * CheckpointMakersStorage - encapsulation of the work over the checkpoint
> markers - write to/read from disk, caching the actual markers
> * CheckpointWorkflow - encapsulation of the checkpoint steps like checkpoint
> begin, checkpoint end
> * CheckpointManager - the entry point of the checkpoint. It responsible for
> consistent initialization of all checkpoint related components and it
> provides API for interaction with them.
> * WorkProgressDispatcher - interface for worker's heartbeat management
> Renamed classes:
> * DbCheckpointListener -> CheckpointListener(it also moved to checkpoint
> package)
> * WriteCheckpointPages -> CheckpointPagesWriter
> * DbCheckpointContextImpl -> CheckpointContextImpl
> Logical changes:
> * asyncRunner(Checkpoint runner thread pool) was replaced by two
> checkpointWritePagesPool(IO-bound thread pool for writing dirty pages to
> disk) and checkpointCollectPagesInfoPool(CPU-bound thread pool for collection
> the dirty pages from memory)
> * mehod afterCheckpointEnd was added to CheckpointListener
--
This message was sent by Atlassian Jira
(v8.3.4#803005)