Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
Docs Required, Release Notes Required
Description
RocksDbKeyValueStorage recreates DB on start. This means that entries that were put to this storage earlier, can or cant be found until raft log is replayed, i.e. the behavior is undefined. For example, this can cause assertion on node recovery:
java.lang.AssertionError: Configuration revision must be greater than local node applied revision [msRev=0, appliedRev=1
which means that applied revision in vault is 1 but only 0 is found in meta storage, as the storage of meta storage is being recreated.
For now, the only thing that saves us from this assertion to be thrown every time, is that operations related to node recovery, applied from distributed configuration (see IgniteImpl#notifyConfigurationListeners ), take some time and raft log is small enough to replay faster than the performing of recovery operations.
Attachments
Issue Links
- Discovered while testing
-
IGNITE-17081 Implement checkpointIndex for RocksDB
- Resolved
- links to