Skip to content

Extending transactional guarantees of common-memory #305

@Gozala

Description

@Gozala

Goal

Implement transactions that can:

  1. Perform several entity updates
  2. Ensure entity invariants (current state)
  3. Succeed all or fail all

Deliverable

Once done storage provider will start sending update batches as opposed to individual document updates.

Details

Had a white-boarding session with @seefeldb today (see below) where we identified several new requirements for common-memory store

Image

Transactions

  1. We want to add atomic transaction, that is set of updates that must be all applied or all rejected.
  2. We also want to chart a way for a Software Transactional Memory (STM) system that we want to implement next. Implication here is that transactions in addition to capturing what entity changed from what state we also want to capture what we assumed state of some entities were even though they aren't updated.
  3. We want to capture and store transactions in the store also so that eventually we could traverse the whole transaction log.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions