You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Ivan Pavlukhin (JIRA)" <ji...@apache.org> on 2018/12/20 14:26:00 UTC

[jira] [Created] (IGNITE-10757) Refactoring: split MvccProcessor into multiple components

Ivan Pavlukhin created IGNITE-10757:
---------------------------------------

             Summary: Refactoring: split MvccProcessor into multiple components
                 Key: IGNITE-10757
                 URL: https://issues.apache.org/jira/browse/IGNITE-10757
             Project: Ignite
          Issue Type: Improvement
          Components: mvcc
            Reporter: Ivan Pavlukhin
             Fix For: 2.8


In current implementation MvccProcessor has multiple responsibilities which can be extracted into separate components. Also it looks like that we do not need an independent processor here because all logic is bound to CacheProcessor. At least 3 components could be created:
1. ShapshotManager responsible for granting MVCC snapshots and handling related messages.
2. LockManager implementing (exclusive) locking for write operations and associated wait queues. Deadlock detection facilities could be also placed here.
3. VacuumManager responsible for scavenging not needed anymore row versions.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)