HHH-17887 Release mode After Statment with deferred result set access does not work
This commit is contained in:
parent
638b5c7394
commit
2bfa6df7cc
|
@ -182,6 +182,7 @@ public class OutputsImpl implements Outputs {
|
|||
executionContext
|
||||
);
|
||||
|
||||
try {
|
||||
//noinspection unchecked
|
||||
final RowReader<Object> rowReader = (RowReader<Object>) ResultsHelper.createRowReader(
|
||||
executionContext,
|
||||
|
@ -251,6 +252,10 @@ public class OutputsImpl implements Outputs {
|
|||
jdbcValues.finishUp( this.context.getSession() );
|
||||
}
|
||||
}
|
||||
finally {
|
||||
jdbcValues.finishUp( this.context.getSession() );
|
||||
}
|
||||
}
|
||||
|
||||
private SessionFactoryImplementor getSessionFactory() {
|
||||
return context.getSession().getFactory();
|
||||
|
|
|
@ -253,7 +253,6 @@ public class DeferredResultSetAccess extends AbstractResultSetAccess {
|
|||
|
||||
skipRows( resultSet );
|
||||
logicalConnection.getResourceRegistry().register( resultSet, preparedStatement );
|
||||
|
||||
}
|
||||
catch (SQLException e) {
|
||||
try {
|
||||
|
@ -267,9 +266,6 @@ public class DeferredResultSetAccess extends AbstractResultSetAccess {
|
|||
"JDBC exception executing SQL [" + finalSql + "]"
|
||||
);
|
||||
}
|
||||
finally {
|
||||
logicalConnection.afterStatement();
|
||||
}
|
||||
}
|
||||
|
||||
private JdbcSessionContext context() {
|
||||
|
@ -324,20 +320,18 @@ public class DeferredResultSetAccess extends AbstractResultSetAccess {
|
|||
|
||||
@Override
|
||||
public void release() {
|
||||
final LogicalConnectionImplementor logicalConnection = getPersistenceContext().getJdbcCoordinator()
|
||||
.getLogicalConnection();
|
||||
if ( resultSet != null ) {
|
||||
getPersistenceContext().getJdbcCoordinator()
|
||||
.getLogicalConnection()
|
||||
.getResourceRegistry()
|
||||
.release( resultSet, preparedStatement );
|
||||
logicalConnection.getResourceRegistry().release( resultSet, preparedStatement );
|
||||
resultSet = null;
|
||||
}
|
||||
|
||||
if ( preparedStatement != null ) {
|
||||
getPersistenceContext().getJdbcCoordinator()
|
||||
.getLogicalConnection()
|
||||
.getResourceRegistry()
|
||||
.release( preparedStatement );
|
||||
logicalConnection.getResourceRegistry().release( preparedStatement );
|
||||
preparedStatement = null;
|
||||
}
|
||||
|
||||
logicalConnection.afterStatement();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue