ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ilya Lantukh (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (IGNITE-5849) Introduce ignite node persistent meta-store
Date Fri, 01 Sep 2017 13:40:00 GMT

    [ https://issues.apache.org/jira/browse/IGNITE-5849?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16150532#comment-16150532
] 

Ilya Lantukh edited comment on IGNITE-5849 at 9/1/17 1:39 PM:
--------------------------------------------------------------

[~kdudkov],
Thanks for your pull request! I've performed review of your code, here are my remarks, questions
and suggestions:
- MetadataStorage - refactor, rename to IndexStorage and make subtype of MetaStorage.
- Validate that cache with name "MetaStorage" cannot be created with meaningful error message.
Also validate memory policy name.
- MetaStorage put/remove - can we avoid synchronization at this level? CacheDataStore works
without it.
- MetaStorage.getOrAllocateMetas() - looks like copy/paste. Refactor?
- MetaStorage.FreeListImpl.getRow(...) - looks like it does the same work as CacheDataRowAdapter.initFromLink(...).
Reuse existing code, it already has fragmentation handling.
- MetaStorage.start(...) - rename to init() or something else. Start(...) implicitly requires
that stop(...) method also exists.
- DataPageIO - reuse it for MetaStorage, skip unneeded fragments.
- GridCacheDatabaseSharedManager.getMetastoreData() - unused method? .start0() - commented
code?
- IgniteCacheDatabaseSharedManager.addMemoryPolicy(...) and createPageEvictionTracker(...)
- why protected?
- IgniteWalRecoveryTest - add test that MetaStorage survives crash in the middle of checkpoint.
Also remove unnecessary type casts in code.


was (Author: ilantukh):
[~kdudkov],
Thanks for your pull request! I've performed review of your code, here are my remarks, questions
and suggestions:
- MetadataStorage - refactor, rename to IndexStorage and make subtype of MetaStorage.
- Validate that cache with name "MetaStorage" cannot be created with meaningful error message.
Also validate memory policy name.
- MetaStorage put/remove - can we avoid synchronization at this level? CacheDataStore works
without it.
- MetaStorage.getOrAllocateMetas() - looks like copy/paste. Refactor?
- MetaStorage.FreeListImpl.getRow(...) looks like it does the same as CacheDataRowAdapter.initFromLink(...).
Reuse existing code, it already has fragmentation handling.
- MetaStorage.start(...) - rename to init() or something else. Start(...) implicitly requires
that stop(...) method also exists.
- DataPageIO - reuse it for MetaStorage, skip unneeded fragments.
- GridCacheDatabaseSharedManager.getMetastoreData() - unused method? .start0() - commented
code?
- IgniteCacheDatabaseSharedManager.addMemoryPolicy(...) and createPageEvictionTracker(...)
- why protected?
- IgniteWalRecoveryTest - add test that MetaStorage survives crash in the middle of checkpoint.
Also remove unnecessary type casts in code.

> Introduce ignite node persistent meta-store
> -------------------------------------------
>
>                 Key: IGNITE-5849
>                 URL: https://issues.apache.org/jira/browse/IGNITE-5849
>             Project: Ignite
>          Issue Type: New Feature
>          Components: persistence
>    Affects Versions: 2.1
>            Reporter: Alexey Goncharuk
>            Assignee: Konstantin Dudkov
>             Fix For: 2.3
>
>
> As persistence feature is being developed, we will have a need for a component, which
reliably stores arbitrary metadata about node and cluster.
> We already have reserved partition IDs for this purpose, all we need to do is to extend
the partition store abstraction to store non-cache objects and make sure this new store participates
in all common recovery procedures.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message