[
https://issues.apache.org/jira/browse/IGNITE-14653?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17363491#comment-17363491
]
Aleksandr Polovtcev edited comment on IGNITE-14653 at 6/15/21, 9:02 AM:
------------------------------------------------------------------------
After a brief discussion with [~agura] , we decided to close this ticket due to
the following reasons:
1. It is intended to have different interfaces for each storage type in
Ignite, and having a unified interface for two of them will be inconsistent
with the overall design.
2. Vault and MetaStorage are conceptually two different things: Vault is a
simple local storage, while MetaStorage is a distributed storage with a more
complex contract (like atomicity guarantees).
3. At the moment of writing, these interfaces are already quite different and
unification can prove to be difficult.
was (Author: apolovtcev):
After a brief discussion with [~agura] , we decided to close this ticket due to
the following reasons:
1. It is decided to have different interfaces for each storage type in Ignite,
and having a unified interface for two of them will be inconsistent with the
overall design.
2. Vault and MetaStorage are conceptually two different things: Vault is a
simple local storage, while MetaStorage is a distributed storage with a more
complex contract (like atomicity guarantees).
3. At the moment of writing, these interfaces are already quite different and
unification can prove to be difficult.
> Generify Vault and Metastorage services interfaces
> ---------------------------------------------------
>
> Key: IGNITE-14653
> URL: https://issues.apache.org/jira/browse/IGNITE-14653
> Project: Ignite
> Issue Type: Improvement
> Reporter: Mirza Aliev
> Priority: Major
> Labels: iep-61, ignite-3
>
> Currently, we have two separate interfaces {{ValutService}} and
> {{MetastorageService}}, but they have a lot of common methods. Seems that it
> would be convenient to have a common interface.
> * Retrieve a common interface for vault and metastorage
> * We need a common interface for listeners on vault and metastorage with
> {{onUpdate}} and {{onError}} methods
> * We should have {{Entry}} interface for vault that will be extended with
> metastorage {{Entry}} with extra revision logic
> * Also seems that {{Watcher}} from metastorage and vault might have a common
> parent
> * Use common contract for {{watch}} method in vault and metastorage
--
This message was sent by Atlassian Jira
(v8.3.4#803005)