[
https://issues.apache.org/jira/browse/IGNITE-5849?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16188260#comment-16188260
]
Konstantin Dudkov commented on IGNITE-5849:
-------------------------------------------
Ilya, thanks for your review
* MetadataStorage - refactor, rename to IndexStorage and make subtype of
MetaStorage.
renamed, but they now have completely different logic, so I find no way to make
a relation
* Validate that cache with name "MetaStorage" cannot be created with
meaningful error message. Also validate memory policy name.
done
* MetaStorage put/remove - can we avoid synchronization at this level?
CacheDataStore works without it.
afaik CacheDataStore methods are called from CacheDataStore under the entry lock
* 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.
done
* DataPageIO - reuse it for MetaStorage, skip unneeded fragments.
I put all common code to AbstractDataPageIO
* GridCacheDatabaseSharedManager.getMetastoreData() - unused method?
.start0() - commented code?
removed
* IgniteCacheDatabaseSharedManager.addMemoryPolicy(...) and
createPageEvictionTracker(...) - why protected?
they are called from outside
> 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
> Labels: important
> Fix For: 2.4
>
>
> 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)