Several of the repository / store interfaces use optimistic concurrency control, however the systems that consume those interfaces do not currently have a way to tell when a write fails due to an optimistic lock failure.
If this information was known, those systems could perform immediate retries when such a lock failure occurs.
We can either make a specific error type, to be returned by all of these interfaces, or perhaps just use an ok bool to indicate such a failure.
This is particularly important for the projection consumers, as they currently have no retry mechanism as they do not use a transport.
Several of the repository / store interfaces use optimistic concurrency control, however the systems that consume those interfaces do not currently have a way to tell when a write fails due to an optimistic lock failure.
If this information was known, those systems could perform immediate retries when such a lock failure occurs.
We can either make a specific error type, to be returned by all of these interfaces, or perhaps just use an
ok bool
to indicate such a failure.This is particularly important for the projection consumers, as they currently have no retry mechanism as they do not use a transport.