public void Store(UncommittedEventStream eventStream) { var commit = new MongoCommit { CommitId = eventStream.CommitId, EventSourceId = eventStream.SourceId, FromVersion = eventStream.InitialVersion, ToVersion = eventStream.Last().EventSequence, Events = eventStream.Select(e => e.EventIdentifier).ToArray(), Processed = false }; try { try { SafellyInsertCommit(commit); InsertEvents(eventStream); MarkCommitAsProcessed(commit.CommitId); } catch { RemoveUnprocessedCommit(commit.CommitId); throw; } } catch (MongoSafeModeException ex) { if (ex.Message.Contains(CONCURRENCY_ERROR_CODE)) { throw new ConcurrencyException(eventStream.SourceId, -1); } } }
public void Store(UncommittedEventStream eventStream) { var commit = new MongoCommit { CommitId = eventStream.CommitId, EventSourceId = eventStream.SourceId, FromVersion = eventStream.InitialVersion, ToVersion = eventStream.Last().EventSequence, Events = eventStream.Select(e=>e.EventIdentifier).ToArray(), Processed = false }; try { try { SafellyInsertCommit(commit); InsertEvents(eventStream); MarkCommitAsProcessed(commit.CommitId); } catch { RemoveUnprocessedCommit(commit.CommitId); throw; } } catch (MongoSafeModeException ex) { if (ex.Message.Contains(CONCURRENCY_ERROR_CODE)) throw new ConcurrencyException(eventStream.SourceId, -1); } }