You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Aleksandr Polovtcev (Jira)" <ji...@apache.org> on 2021/06/15 09:03:00 UTC
[jira] [Comment Edited] (IGNITE-14653) Generify Vault and
Metastorage services interfaces
[ 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)