[
https://issues.apache.org/jira/browse/IGNITE-19745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Lapin updated IGNITE-19745:
-------------------------------------
Reviewer: Alexander Lapin
> Add ability to retrieve/scan over meta storage revisions for a specific key
> ---------------------------------------------------------------------------
>
> Key: IGNITE-19745
> URL: https://issues.apache.org/jira/browse/IGNITE-19745
> Project: Ignite
> Issue Type: Bug
> Reporter: Sergey Uttsel
> Assignee: Sergey Uttsel
> Priority: Major
> Labels: ignite-3
> Fix For: 3.0.0-beta2
>
> Time Spent: 4h 50m
> Remaining Estimate: 0h
>
> h3. *Motivation*
> Occurred that it's not possible to subscribe to old meta storage revision.
> Alternative solution will be a combination of subscription for new ones along
> with scanning/retrieving old revisions in a following way:
> # Register a watch listener that will receive new entries.
> # Read an applied revision.
> # Retrieve existing entries up to the applied revision.
> # If an existing entries list contains the expected entry then use it. Else
> wait when the watch listener receive the expected entry.
> Currently there's no method in meta storage API that will provide an ability
> to scan over revisions {*}locally{*}, so that we may add such mehod, e.g.
> {code:java}
> private List<Entry> doGet(byte[] key, long revLowerBound, long revUpperBound)
> {code}
> Aforementioned method is a method in RocksDbKeyValueStorage that should be
> both properly exposed to ms API and also implemented in KeyValueStorage.
> h3. Definition of Done.
> It's possible to retrieve/scan over meta storage revisions for a specific key.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)