为什么@Jonathan Oliver 的 EventStore 的 SQL 持久性用作CommitSequence
检测重复提交的标准之一?为什么不StreamId
足够CommitId
?
请参阅下面的 SQL。
SELECT COUNT(*)
FROM Commits
WHERE StreamId = @StreamId
AND CommitSequence = @CommitSequence
AND CommitId = @CommitId
此 SQL 语句来自SqlPersistenceEngine.DetectDuplicate()
. 它用于确定DuplicateCommitException
应该抛出 a 还是只抛出ConcurrencyException
.