Java Mailing List Archive

http://www.gg3721.com/

Home » Hibernate Commits List »

[hibernate-commits] Hibernate SVN: r14999 - in
 core/branches/Branch_3_2/src/org/hibernate: jdbc and 1 other
 directory.

hibernate-commits

2008-07-31


Author LoginPost Reply
Author: steve.ebersole@(protected)
Date: 2008-07-31 11:10:43 -0400 (Thu, 31 Jul 2008)
New Revision: 14999

Modified:
 core/branches/Branch_3_2/src/org/hibernate/engine/transaction/Isolater.java
 core/branches/Branch_3_2/src/org/hibernate/jdbc/AbstractBatcher.java
Log:
HHH-2604 : Isolator.JdbcDelegate connection releasing

Modified: core/branches/Branch_3_2/src/org/hibernate/engine/transaction/Isolater.java
===================================================================
--- core/branches/Branch_3_2/src/org/hibernate/engine/transaction/Isolater.java  2008-07-31 15:10:19 UTC (rev 14998)
+++ core/branches/Branch_3_2/src/org/hibernate/engine/transaction/Isolater.java  2008-07-31 15:10:43 UTC (rev 14999)
@@(protected) @@
       }
     }
     finally {
-        if ( transacted && wasAutoCommit ) {
-          try {
-            connection.setAutoCommit( true );
+        if ( connection != null ) {
+          if ( transacted && wasAutoCommit ) {
+            try {
+              connection.setAutoCommit( true );
+            }
+            catch( Throwable ignore ) {
+              log.trace( "was unable to reset connection back to auto-commit" );
+            }
         }
-          catch( Throwable ignore ) {
-            log.trace( "was unable to reset connection back to auto-commit" );
-          }
+          session.getBatcher().closeConnection( connection );
       }
-        session.getBatcher().closeConnection( connection );
     }
   }
 }

Modified: core/branches/Branch_3_2/src/org/hibernate/jdbc/AbstractBatcher.java
===================================================================
--- core/branches/Branch_3_2/src/org/hibernate/jdbc/AbstractBatcher.java  2008-07-31 15:10:19 UTC (rev 14998)
+++ core/branches/Branch_3_2/src/org/hibernate/jdbc/AbstractBatcher.java  2008-07-31 15:10:43 UTC (rev 14999)
@@(protected) @@
 }

 public void closeConnection(Connection conn) throws HibernateException {
+    if ( conn == null ) {
+      log.debug( "found null connection on AbstractBatcher#closeConnection" );
+      // EARLY EXIT!!!!
+      return;
+    }
+
   if ( log.isDebugEnabled() ) {
-      log.debug(
-          "closing JDBC connection" +
-          preparedStatementCountsToString() +
-          resultSetCountsToString()
-        );
+      log.debug( "closing JDBC connection" + preparedStatementCountsToString() + resultSetCountsToString() );
   }

   try {
     if ( !conn.isClosed() ) {
-        JDBCExceptionReporter.logAndClearWarnings(conn);
+        JDBCExceptionReporter.logAndClearWarnings( conn );
     }
-      factory.getConnectionProvider().closeConnection(conn);
+      factory.getConnectionProvider().closeConnection( conn );
   }
-    catch (SQLException sqle) {
-      throw JDBCExceptionHelper.convert(
-          factory.getSQLExceptionConverter(),
-           sqle,
-           "Cannot close connection"
-        );
+    catch ( SQLException sqle ) {
+      throw JDBCExceptionHelper.convert( factory.getSQLExceptionConverter(), sqle, "Cannot close connection" );
   }
 }


_______________________________________________
hibernate-commits mailing list
hibernate-commits@(protected)
https://lists.jboss.org/mailman/listinfo/hibernate-commits
©2008 gg3721.com - Jax Systems, LLC, U.S.A.