diff --git a/src/Marten/Services/TransactionState.cs b/src/Marten/Services/TransactionState.cs index 65fe39ade6..c9c4d6281f 100644 --- a/src/Marten/Services/TransactionState.cs +++ b/src/Marten/Services/TransactionState.cs @@ -24,11 +24,19 @@ public TransactionState(IConnectionFactory factory, CommandRunnerMode mode, Isol public void Open() { + if (IsOpen) + { + return; + } Connection.Open(); } public Task OpenAsync(CancellationToken token) { + if (IsOpen) + { + return Task.CompletedTask; + } return Connection.OpenAsync(token); } @@ -63,7 +71,7 @@ public void Apply(NpgsqlCommand cmd) public NpgsqlTransaction Transaction { get; private set; } public NpgsqlConnection Connection { get; } - + public void Commit() { Transaction?.Commit();