dogmatiq / verity

🚧 An event-sourced Dogma engine.
MIT License
2 stars 2 forks source link

Implement a DynamoDB persistence provider. #175

Open jmalloc opened 4 years ago

jmalloc commented 4 years ago

This should be a lot easier now that DynamoDB supports transactions.

jmalloc commented 4 years ago

Discussing some specifics of the persistence layer with @danilvpetrov, we determined that this couldn't proceed with the usage of the persistence system as it is.

The behavior of any transaction operation that uses OCC and thus returns some kind of ErrConflict error would need to change to expect such an error at commit-time, rather than when the individual transaction operation is called.

Additionally, aggregate.Sink relies on some un-guaranteed implementation specifics of the current persistence providers as detailed in #241.