[
https://issues.apache.org/jira/browse/IGNITE-19674?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mirza Aliev updated IGNITE-19674:
---------------------------------
Description:
Currently if we use {{StandaloneMetaStorageManager#create()}} with
{{RocksDbKeyValueStorage}} in a scenarios when a node is restarted, data in a
metastorage is not recovering, because the logic in
{{RocksDbKeyValueStorage#start}} is the following: when we restart
{{RocksDbKeyValueStorage}}, we call {{recreateDb}} which deletes existing data,
recovery is relying on the raft's snapshot and log playback.
When we use {{StandaloneMetaStorageManager}} we mock raft layer, meaning that
we do not restore metastorage using raft's snapshot.
I propose to create test version of {{RocksDbKeyValueStorage}} so it won't
delete data when it is used in tests scenarios.
was:
Currently if we use {{StandaloneMetaStorageManager#create()}} with
{{RocksDbKeyValueStorage}} in a scenarios when a node is restarted, data in a
metastorage is not recovering, because the logic in
{{RocksDbKeyValueStorage#start}} is the following: when we restart
{{RocksDbKeyValueStorage}}, we call {{recreateDb}} which deletes existing data,
recovery is relying on the raft's snapshot and log playback.
When we use {{StandaloneMetaStorageManager}} we mock raft layer, meaning that
we do not restore metastorage using raft's snapshot.
I propose to change a bit {{RocksDbKeyValueStorage}} so it won't delete data
when it is used in tests scenarios.
> Provide an ability to restart StandaloneMetaStorageManager with the recovered
> data
> ----------------------------------------------------------------------------------
>
> Key: IGNITE-19674
> URL: https://issues.apache.org/jira/browse/IGNITE-19674
> Project: Ignite
> Issue Type: Improvement
> Reporter: Mirza Aliev
> Assignee: Mirza Aliev
> Priority: Major
> Labels: ignite-3
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Currently if we use {{StandaloneMetaStorageManager#create()}} with
> {{RocksDbKeyValueStorage}} in a scenarios when a node is restarted, data in a
> metastorage is not recovering, because the logic in
> {{RocksDbKeyValueStorage#start}} is the following: when we restart
> {{RocksDbKeyValueStorage}}, we call {{recreateDb}} which deletes existing
> data, recovery is relying on the raft's snapshot and log playback.
> When we use {{StandaloneMetaStorageManager}} we mock raft layer, meaning that
> we do not restore metastorage using raft's snapshot.
> I propose to create test version of {{RocksDbKeyValueStorage}} so it won't
> delete data when it is used in tests scenarios.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)