Skip to content

Commit e8cdcf5

Browse files
NH-2176 - Forgotten update of ambient transaction. More cleanup of DTC tests.
1 parent d864dbe commit e8cdcf5

File tree

2 files changed

+4
-5
lines changed

2 files changed

+4
-5
lines changed

src/NHibernate.Test/NHSpecificTest/DtcFailures/DtcFailuresFixture.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public void WillNotCrashOnDtcPrepareFailure()
141141
}
142142

143143
[Test]
144-
public void Can_roll_back_transaction()
144+
public void CanRollbackTransaction()
145145
{
146146
var tx = new TransactionScope();
147147
var disposeCalled = false;
@@ -218,7 +218,6 @@ public void TransactionInsertWithRollBackTask()
218218
s.Save(person);
219219
ForceEscalationToDistributedTx.Escalate(true); //will rollback tx
220220
person.CreatedAt = DateTime.Now;
221-
s.Update(person);
222221
}
223222
txscope.Complete();
224223
}
@@ -259,7 +258,6 @@ public void TransactionInsertLoadWithRollBackTask()
259258
{
260259
var person = s.Get<Person>(savedId);
261260
person.CreatedAt = createdAt.AddMonths(-1);
262-
s.Update(person);
263261
}
264262
ForceEscalationToDistributedTx.Escalate(true);
265263

@@ -308,7 +306,6 @@ public void TransactionInsertLoadFlushWithRollBackTask()
308306
{
309307
var person = s.Get<Person>(savedId);
310308
person.CreatedAt = createdAt.AddMonths(-1);
311-
s.Update(person);
312309
s.Flush();
313310
}
314311
ForceEscalationToDistributedTx.Escalate(true);
@@ -343,7 +340,7 @@ public void MultiThreadedTransaction()
343340
{
344341
delegate
345342
{
346-
Can_roll_back_transaction();
343+
CanRollbackTransaction();
347344
_totalCall++;
348345
},
349346
delegate

src/NHibernate/AdoNet/ConnectionManager.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ private void CloseConnection()
155155
{
156156
Factory.ConnectionProvider.CloseConnection(_connection);
157157
_connection = null;
158+
_connectionAmbientTransaction = null;
158159
}
159160

160161
public DbConnection GetConnection()
@@ -378,6 +379,7 @@ public void EnlistIfRequired()
378379
// Probable case: nested transaction scope. Supporting this could be done by releasing the
379380
// connection instead of enlisting.
380381
_session.Connection.EnlistTransaction(tran);
382+
_connectionAmbientTransaction = tran;
381383
}
382384

383385
private bool RequireConnectionSwapInDtc

0 commit comments

Comments
 (0)