Duncan Jones

Results 98 comments of Duncan Jones

**You can lock all the streams involved whilst you check the invariant** This is fragile because if that process falls over it can leave locks in place... so we need...

**You can use a specific stream that represents the "transaction" and use saga-like operations to reliably undo any partial updates** This is a lot of extra work and also there...

**You can just fall back on the transaction implementation of an actual RDBMS** Database transactions are the mortal enemy of distributed systems. If you use them you stand to lose...

From the point of view of a **CQRS** system, a command is anything that _alters a state that our system is tracking_. (It is easy to confuse this with anything...

There is some question on what the difference is between a command and an event - to my mind an event _once committed to the stream_ cannot be rejected... if...

It seems there is also a tense difference - an event is past-tense in that it has happened. A command is an instruction to a future tense action. Perhaps this...

_In the context of event sourcing_ A projection is a function that can be applied to an ordered set of events to produce some aspect of the state resultant from...

Since the definitive definition relies a lot on "consistency boundary" it would also be helpful to have a definition of what that means.

Is there a difference between a business rule type of aggregate and a data consistency type of aggregate...and, if so, what do we do differently in each case?

**Event** is a very much overused term, the meaning of which is very much context dependent. 1. In the context of **event sourcing** An event is a fact that has...