From 904ed10eaf48a89872cea81697de781611311c29 Mon Sep 17 00:00:00 2001 From: Sanne Grinovero Date: Tue, 30 Jul 2019 11:26:41 +0100 Subject: [PATCH] HHH-13523 Remove an additional field from JdbcCoordinatorImpl --- .../jdbc/internal/JdbcCoordinatorImpl.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/JdbcCoordinatorImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/JdbcCoordinatorImpl.java index 968c843d0c..3388f7c3ae 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/JdbcCoordinatorImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/JdbcCoordinatorImpl.java @@ -69,7 +69,6 @@ public class JdbcCoordinatorImpl implements JdbcCoordinator { private final HashMap> xref = new HashMap<>(); private final Set unassociatedResultSets = new HashSet<>(); - private transient SqlExceptionHelper exceptionHelper; private Statement lastQuery; private final boolean isUserSuppliedConnection; @@ -107,8 +106,6 @@ public class JdbcCoordinatorImpl implements JdbcCoordinator { this.jdbcServices = owner.getJdbcSessionContext() .getServiceRegistry() .getService( JdbcServices.class ); - this.exceptionHelper = jdbcServices - .getSqlExceptionHelper(); } private JdbcCoordinatorImpl( @@ -121,8 +118,6 @@ public class JdbcCoordinatorImpl implements JdbcCoordinator { this.jdbcServices = owner.getJdbcSessionContext() .getServiceRegistry() .getService( JdbcServices.class ); - this.exceptionHelper = jdbcServices - .getSqlExceptionHelper(); } @Override @@ -144,7 +139,7 @@ public class JdbcCoordinatorImpl implements JdbcCoordinator { * @return The SqlExceptionHelper */ public SqlExceptionHelper sqlExceptionHelper() { - return exceptionHelper; + return jdbcServices.getSqlExceptionHelper(); } private int flushDepth; @@ -344,12 +339,17 @@ public class JdbcCoordinatorImpl implements JdbcCoordinator { @Override public void cancelLastQuery() { try { - if (lastQuery != null) { + if ( lastQuery != null ) { lastQuery.cancel(); } } catch (SQLException sqle) { - throw exceptionHelper.convert( sqle, "Cannot cancel query" ); + SqlExceptionHelper sqlExceptionHelper = jdbcServices.getSqlExceptionHelper(); + //Should always be non-null, but to make sure as the implementation is lazy: + if ( sqlExceptionHelper != null ) { + sqlExceptionHelper = new SqlExceptionHelper( false ); + } + throw sqlExceptionHelper.convert( sqle, "Cannot cancel query" ); } finally { lastQuery = null;