Skip to content
Snippets Groups Projects

Draft: Account Synchronization Over Remote Storage

Closed Josh Brooks requested to merge projects/AccountSync into release

Add a sync module, which implements the draft spec "Multi-Client State Synchronization." When the user first creates their account, everything exists locally. To add devices, they will need to add remote storage. Options for remote storage include SFTP, Crust, Dropbox, etc. All devices must share the same cloud storage. Using that remote storage, implemented by external library users, sync can write a transaction log that allows all other devices connected to that remote storage to stay in synchronization with each other. This module includes the following major components:

  1. RemoteStorage interface, which must be implemented against SFTP, Crust, Dropbox, etc.
  2. TransactionLog, a log that writes to the remote storage.
  3. KV, a key-value store wrapping https://git.xx.network/elixxir/ekv with options to store values optionally against in the TransactionLog.
  4. Collector, a thread manager that reads other transaction logs on RemoteStorage and applies updates against the KV.
Edited by Richard T. Carback III

Merge request reports

Approval is optional

Closed by Richard T. Carback IIIRichard T. Carback III 1 year ago (May 19, 2023 10:34pm UTC)

Merge details

  • The changes were not merged into release.

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
Please register or sign in to reply
Loading