Skip to content
This repository was archived by the owner on Nov 16, 2023. It is now read-only.
This repository was archived by the owner on Nov 16, 2023. It is now read-only.

Implement the C++ internals of the versioned storage library #51

@ivte-ms

Description

@ivte-ms

This should be a separate static library (consumed by the main StateSync library) with a very low-level interface, so that all low-level elements can be tested separately without exposing them through the main library's interface. Features that should go in first:

  • Two-level ({key:sybkey}=>value) map-like versioned storage.
  • Support for atomic transactions that validate and modify multiple keys and subkeys.
  • Support for multiple immutable snapshots of different versions, that are not influenced by ongoing modifications.
  • Deterministically ordered iteration over keys and subkeys within keys.

Future commits:

  • Subscribing to changes (of individual keys and subkeys).
  • Fast-forwarding the state of one instance of the storage to a newer state of another instance of storage (will be used by the StateSync directly).

Metadata

Metadata

Assignees

Labels

StateSyncLabel for StateSync related work.

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions