[jira] [Updated] (IGNITE-14745) Storage API and basic configuration module

2021-06-17 Thread Ivan Bessonov (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-14745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ivan Bessonov updated IGNITE-14745:
---
Fix Version/s: (was: 3.0)
   3.0.0-alpha3

> Storage API and basic configuration module
> --
>
> Key: IGNITE-14745
> URL: https://issues.apache.org/jira/browse/IGNITE-14745
> Project: Ignite
>  Issue Type: Task
>Reporter: Sergey Chugunov
>Assignee: Ivan Bessonov
>Priority: Major
>  Labels: iep-74, ignite-3
> Fix For: 3.0.0-alpha3
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Introduce basic Storage API described in 
> [IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage]
>  in a separate module.
> For now Storage API should contain only four basic methods to read, update 
> and remove keys from Storage and to iterate over available keys:
> {code:java}
> /** Interface providing methods to read, remove and update keys in storage. */
> public interface Storage {
> /** Reads a DataRow for a given Key. */
> public DataRow read(Key key);
>  
> /** Removes DataRow associated with a given Key. */
> public void remove(Key key);
>  
> /** Executes an update with custom logic implemented by UpdateClosure 
> interface. */
> public update(Key key, UpdateClosure clo);
>  
> /** Obtains Iterator over some DataRows in storage. */
> public Iterator iterator(/* parameters */).
> }
> {code}
> This simplistic API is based on IgniteCacheOffheapManager from existing code 
> base of Ignite 2.x. Only essential methods were left for the initial version 
> of interface but it obviously will be refined during development.
> Details about some classes like Key or UpdateClosure are not clear yet and 
> can be omitted (basic stub classes may be used).
> Implement basic configuration that is expected to be common for any Storage 
> implementation.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14745) Storage API and basic configuration module

2021-05-21 Thread Sergey Chugunov (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-14745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergey Chugunov updated IGNITE-14745:
-
Description: 
Introduce basic Storage API described in 
[IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage] 
in a separate module.

For now Storage API should contain only four basic methods to read, update and 
remove keys from Storage and to iterate over available keys:


{code:java}
/** Interface providing methods to read, remove and update keys in storage. */
public interface Storage {
/** Reads a DataRow for a given Key. */
public DataRow read(Key key);
 
/** Removes DataRow associated with a given Key. */
public void remove(Key key);
 
/** Executes an update with custom logic implemented by UpdateClosure 
interface. */
public update(Key key, UpdateClosure clo);
 
/** Obtains Iterator over some DataRows in storage. */
public Iterator iterator(/* parameters */).
}
{code}

This simplistic API is based on IgniteCacheOffheapManager from existing code 
base of Ignite 2.x. Only essential methods were left for the initial version of 
interface but it obviously will be refined during development.

Details about some classes like Key or UpdateClosure are not clear yet and can 
be omitted (basic stub classes may be used).

Implement basic configuration that is expected to be common for any Storage 
implementation.

  was:
Introduce basic Storage API described in 
[IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage] 
in a separate module.

For now Storage API should contain only four basic methods to read, update and 
remove keys from Storage and to iterate over available keys:


{code:java}
/** Interface providing methods to read, remove and update keys in storage. */
public interface Storage {
/** Reads a DataRow for a given Key. */
public DataRow read(Key key);
 
/** Removes DataRow associated with a given Key. */
public void remove(Key key);
 
/** Executes an update with custom logic implemented by UpdateClosure 
interface. */
public update(Key key, UpdateClosure clo);
 
/** Obtains Iterator over some DataRows in storage. */
public Iterator iterator(/* parameters */).
}
{code}

Details about some classes like Key or UpdateClosure are not clear yet and can 
be omitted (basic stub classes may be used).

Implement basic configuration that is expected to be common for any Storage 
implementation.


> Storage API and basic configuration module
> --
>
> Key: IGNITE-14745
> URL: https://issues.apache.org/jira/browse/IGNITE-14745
> Project: Ignite
>  Issue Type: Task
>Reporter: Sergey Chugunov
>Priority: Major
>  Labels: iep-74, ignite-3
> Fix For: 3.0
>
>
> Introduce basic Storage API described in 
> [IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage]
>  in a separate module.
> For now Storage API should contain only four basic methods to read, update 
> and remove keys from Storage and to iterate over available keys:
> {code:java}
> /** Interface providing methods to read, remove and update keys in storage. */
> public interface Storage {
> /** Reads a DataRow for a given Key. */
> public DataRow read(Key key);
>  
> /** Removes DataRow associated with a given Key. */
> public void remove(Key key);
>  
> /** Executes an update with custom logic implemented by UpdateClosure 
> interface. */
> public update(Key key, UpdateClosure clo);
>  
> /** Obtains Iterator over some DataRows in storage. */
> public Iterator iterator(/* parameters */).
> }
> {code}
> This simplistic API is based on IgniteCacheOffheapManager from existing code 
> base of Ignite 2.x. Only essential methods were left for the initial version 
> of interface but it obviously will be refined during development.
> Details about some classes like Key or UpdateClosure are not clear yet and 
> can be omitted (basic stub classes may be used).
> Implement basic configuration that is expected to be common for any Storage 
> implementation.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (IGNITE-14745) Storage API and basic configuration module

2021-05-20 Thread Sergey Chugunov (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-14745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergey Chugunov updated IGNITE-14745:
-
Description: 
Introduce basic Storage API described in 
[IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage] 
in a separate module.

For now Storage API should contain only four basic methods to read, update and 
remove keys from Storage and to iterate over available keys:


{code:java}
/** Interface providing methods to read, remove and update keys in storage. */
public interface Storage {
/** Reads a DataRow for a given Key. */
public DataRow read(Key key);
 
/** Removes DataRow associated with a given Key. */
public void remove(Key key);
 
/** Executes an update with custom logic implemented by UpdateClosure 
interface. */
public update(Key key, UpdateClosure clo);
 
/** Obtains Iterator over some DataRows in storage. */
public Iterator iterator(/* parameters */).
}
{code}

Details about some classes like Key or UpdateClosure are not clear yet and can 
be omitted (basic stub classes may be used).

Implement basic configuration that is expected to be common for any Storage 
implementation.

  was:
Introduce basic Storage API described in 
[IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage] 
in a separate module.

Implement basic configuration that is expected to be common for any Storage 
implementation.


> Storage API and basic configuration module
> --
>
> Key: IGNITE-14745
> URL: https://issues.apache.org/jira/browse/IGNITE-14745
> Project: Ignite
>  Issue Type: Task
>Reporter: Sergey Chugunov
>Priority: Major
>  Labels: iep-74, ignite-3
> Fix For: 3.0
>
>
> Introduce basic Storage API described in 
> [IEP-74|https://cwiki.apache.org/confluence/display/IGNITE/IEP-74+Data+Storage]
>  in a separate module.
> For now Storage API should contain only four basic methods to read, update 
> and remove keys from Storage and to iterate over available keys:
> {code:java}
> /** Interface providing methods to read, remove and update keys in storage. */
> public interface Storage {
> /** Reads a DataRow for a given Key. */
> public DataRow read(Key key);
>  
> /** Removes DataRow associated with a given Key. */
> public void remove(Key key);
>  
> /** Executes an update with custom logic implemented by UpdateClosure 
> interface. */
> public update(Key key, UpdateClosure clo);
>  
> /** Obtains Iterator over some DataRows in storage. */
> public Iterator iterator(/* parameters */).
> }
> {code}
> Details about some classes like Key or UpdateClosure are not clear yet and 
> can be omitted (basic stub classes may be used).
> Implement basic configuration that is expected to be common for any Storage 
> implementation.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)