HHH-7090 - Temporary session closing affects original session
This commit is contained in:
parent
38c4f02cea
commit
1877315ee3
|
@ -236,13 +236,14 @@ public final class SessionImpl extends AbstractSessionImpl implements EventSourc
|
||||||
this.flushBeforeCompletionEnabled = flushBeforeCompletionEnabled;
|
this.flushBeforeCompletionEnabled = flushBeforeCompletionEnabled;
|
||||||
|
|
||||||
if ( transactionCoordinator == null ) {
|
if ( transactionCoordinator == null ) {
|
||||||
|
this.isTransactionCoordinatorShared = false;
|
||||||
|
this.connectionReleaseMode = connectionReleaseMode;
|
||||||
|
this.autoJoinTransactions = autoJoinTransactions;
|
||||||
|
|
||||||
this.transactionCoordinator = new TransactionCoordinatorImpl( connection, this );
|
this.transactionCoordinator = new TransactionCoordinatorImpl( connection, this );
|
||||||
this.transactionCoordinator.getJdbcCoordinator().getLogicalConnection().addObserver(
|
this.transactionCoordinator.getJdbcCoordinator().getLogicalConnection().addObserver(
|
||||||
new ConnectionObserverStatsBridge( factory )
|
new ConnectionObserverStatsBridge( factory )
|
||||||
);
|
);
|
||||||
this.isTransactionCoordinatorShared = false;
|
|
||||||
this.connectionReleaseMode = connectionReleaseMode;
|
|
||||||
this.autoJoinTransactions = autoJoinTransactions;
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if ( connection != null ) {
|
if ( connection != null ) {
|
||||||
|
|
|
@ -218,7 +218,7 @@ public class AggressiveReleaseTest extends ConnectionManagementTestCase {
|
||||||
Session s = getSessionUnderTest();
|
Session s = getSessionUnderTest();
|
||||||
s.beginTransaction();
|
s.beginTransaction();
|
||||||
|
|
||||||
List entities = new ArrayList();
|
List<Silly> entities = new ArrayList<Silly>();
|
||||||
for ( int i = 0; i < 10; i++ ) {
|
for ( int i = 0; i < 10; i++ ) {
|
||||||
Other other = new Other( "other-" + i );
|
Other other = new Other( "other-" + i );
|
||||||
Silly silly = new Silly( "silly-" + i, other );
|
Silly silly = new Silly( "silly-" + i, other );
|
||||||
|
@ -227,9 +227,7 @@ public class AggressiveReleaseTest extends ConnectionManagementTestCase {
|
||||||
}
|
}
|
||||||
s.flush();
|
s.flush();
|
||||||
|
|
||||||
Iterator itr = entities.iterator();
|
for ( Silly silly : entities ) {
|
||||||
while ( itr.hasNext() ) {
|
|
||||||
Silly silly = ( Silly ) itr.next();
|
|
||||||
silly.setName( "new-" + silly.getName() );
|
silly.setName( "new-" + silly.getName() );
|
||||||
silly.getOther().setName( "new-" + silly.getOther().getName() );
|
silly.getOther().setName( "new-" + silly.getOther().getName() );
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
<class name="Silly">
|
<class name="Silly">
|
||||||
<id name="id" type="long">
|
<id name="id" type="long">
|
||||||
<generator class="native"/>
|
<generator class="increment"/>
|
||||||
</id>
|
</id>
|
||||||
<property name="name"/>
|
<property name="name"/>
|
||||||
<many-to-one name="other" class="Other" cascade="all"/>
|
<many-to-one name="other" class="Other" cascade="all"/>
|
||||||
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
<class name="Other">
|
<class name="Other">
|
||||||
<id name="id" type="long">
|
<id name="id" type="long">
|
||||||
<generator class="native"/>
|
<generator class="increment"/>
|
||||||
</id>
|
</id>
|
||||||
<property name="name"/>
|
<property name="name"/>
|
||||||
</class>
|
</class>
|
||||||
|
|
Loading…
Reference in New Issue