ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aleksandr Polovtcev (Jira)" <j...@apache.org>
Subject [jira] [Comment Edited] (IGNITE-14653) Generify Vault and Metastorage services interfaces
Date Tue, 15 Jun 2021 09:03:00 GMT

    [ 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)

Mime
View raw message