From f359b77ff536b2be247de8d5c9d05ba0872f920d Mon Sep 17 00:00:00 2001 From: mdb Date: Mon, 8 Aug 2005 17:14:56 +0000 Subject: [PATCH] Don't try to rollback if the failure resulted in the connection being closed. git-svn-id: https://samskivert.googlecode.com/svn/trunk@1690 6335cc39-0255-0410-8fd6-9bcaacd3b74c --- .../src/java/com/samskivert/jdbc/SimpleRepository.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/projects/samskivert/src/java/com/samskivert/jdbc/SimpleRepository.java b/projects/samskivert/src/java/com/samskivert/jdbc/SimpleRepository.java index 39c06ed8..f124eafd 100644 --- a/projects/samskivert/src/java/com/samskivert/jdbc/SimpleRepository.java +++ b/projects/samskivert/src/java/com/samskivert/jdbc/SimpleRepository.java @@ -142,9 +142,10 @@ public class SimpleRepository extends Repository } catch (SQLException sqe) { if (attemptedOperation) { - // back out our changes if something got hosed + // back out our changes if something got hosed (but not if + // the hosage was a result of losing our connection) try { - if (supportsTransactions) { + if (supportsTransactions && !conn.isClosed()) { conn.rollback(); } } catch (SQLException rbe) { @@ -181,7 +182,7 @@ public class SimpleRepository extends Repository } catch (PersistenceException pe) { // back out our changes if something got hosed try { - if (supportsTransactions) { + if (supportsTransactions && !conn.isClosed()) { conn.rollback(); } } catch (SQLException rbe) { @@ -193,7 +194,7 @@ public class SimpleRepository extends Repository } catch (RuntimeException rte) { // back out our changes if something got hosed try { - if (conn != null && supportsTransactions) { + if (conn != null && supportsTransactions && !conn.isClosed()) { conn.rollback(); } } catch (SQLException rbe) {