db-derby-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kmars...@apache.org
Subject svn commit: r1185298 - in /db/derby/code/branches/10.8: ./ java/engine/org/apache/derby/impl/jdbc/TransactionResourceImpl.java java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/AuthenticationTest.java
Date Mon, 17 Oct 2011 17:33:23 GMT
Author: kmarsden
Date: Mon Oct 17 17:33:23 2011
New Revision: 1185298

URL: http://svn.apache.org/viewvc?rev=1185298&view=rev
Log: (empty)

Modified:
    db/derby/code/branches/10.8/   (props changed)
    db/derby/code/branches/10.8/java/engine/org/apache/derby/impl/jdbc/TransactionResourceImpl.java
    db/derby/code/branches/10.8/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/AuthenticationTest.java

Propchange: db/derby/code/branches/10.8/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 17 17:33:23 2011
@@ -1,2 +1,2 @@
 /db/derby/code/branches/10.7:1061570,1061578,1082235
-/db/derby/code/trunk:1063809,1088633,1089795,1091000,1091221,1091285,1092067,1092795,1094315,1094572,1094728,1095247,1096741,1096890,1096991,1097247,1097249,1097460,1097469,1097471,1098033,1101059,1101839,1102620,1102826,1103681,1103718,1103742,1104365,1125305,1126358,1126468,1127825,1127883,1128243,1128942,1129136,1129764,1129797,1130077,1130084,1130632,1130895,1131030,1131272,1132546,1132664,1132747,1132860,1132928,1133304,1133317,1133741,1133752,1134139,1136363,1136371,1136397,1136844,1137213,1138201,1138341,1138444,1138787,1138795,1139449,1139451,1140222,1140744,1141924,1142583,1142635,1145057,1146644,1146915,1146962,1147219,1147242,1147335,1148344,1148354,1148429,1148658,1149054,1149090,1149270,1149482,1149662,1151101,1151612,1158108,1160593,1160597,1161208,1162737,1163131,1163616,1164358,1164370,1164495,1165221,1166313,1167017,1167226,1167470,1169692,1170470,1171227,1171665,1171672,1173446,1173647,1174436,1174646,1176633,1176636,1177589,1179374,1179546,1180790,1180858,
 1181756,1183463,1183671
+/db/derby/code/trunk:1063809,1088633,1089795,1091000,1091221,1091285,1092067,1092795,1094315,1094572,1094728,1095247,1096741,1096890,1096991,1097247,1097249,1097460,1097469,1097471,1098033,1101059,1101839,1102620,1102826,1103681,1103718,1103742,1104365,1125305,1126358,1126468,1127825,1127883,1128243,1128942,1129136,1129764,1129797,1130077,1130084,1130632,1130895,1131030,1131272,1132546,1132664,1132747,1132860,1132928,1133304,1133317,1133741,1133752,1134139,1136363,1136371,1136397,1136844,1137213,1138201,1138341,1138444,1138787,1138795,1139449,1139451,1140222,1140744,1141924,1142583,1142635,1145057,1146644,1146915,1146962,1147219,1147242,1147335,1148344,1148354,1148429,1148658,1149054,1149090,1149270,1149482,1149662,1151101,1151612,1158108,1160593,1160597,1161208,1162737,1163131,1163616,1164358,1164370,1164495,1165221,1166313,1167017,1167226,1167470,1169692,1170470,1171227,1171665,1171672,1173446,1173647,1174436,1174646,1176633,1176636,1177589,1179374,1179546,1180790,1180858,
 1181756,1183463,1183503,1183671

Modified: db/derby/code/branches/10.8/java/engine/org/apache/derby/impl/jdbc/TransactionResourceImpl.java
URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.8/java/engine/org/apache/derby/impl/jdbc/TransactionResourceImpl.java?rev=1185298&r1=1185297&r2=1185298&view=diff
==============================================================================
--- db/derby/code/branches/10.8/java/engine/org/apache/derby/impl/jdbc/TransactionResourceImpl.java
(original)
+++ db/derby/code/branches/10.8/java/engine/org/apache/derby/impl/jdbc/TransactionResourceImpl.java
Mon Oct 17 17:33:23 2011
@@ -336,7 +336,12 @@ public final class TransactionResourceIm
 			// it was already removed.  all that's left to cleanup is
 			// JDBC objects.
 			if (cm!=null) {
-				boolean isShutdown = cleanupOnError(thrownException, database != null ? database.isActive()
: false);
+			    //diagActive should be passed to cleanupOnError
+			    //only if a session is active, Login errors are a special case where
+			    // the database is active but the session is not.
+				boolean sessionActive = (database != null) && database.isActive() &&

+					!isLoginException(thrownException);
+				boolean isShutdown = cleanupOnError(thrownException, sessionActive);
 				if (checkForShutdown && isShutdown) {
 					// Change the error message to be a known shutdown.
 					thrownException = shutdownDatabaseException();
@@ -368,6 +373,25 @@ public final class TransactionResourceIm
 	}
 
     /**
+     * Determine if the exception thrown is a login exception.
+     * Needed for DERBY-5427 fix to prevent inappropriate thread dumps
+     * and javacores. This exception is special because it is 
+     * SESSION_SEVERITY and database.isActive() is true, but the 
+     * session hasn't started yet,so it is not an actual crash and 
+     * should not report extended diagnostics.
+     * 
+     * @param thrownException
+     * @return true if this is a login failure exception
+     */
+    private boolean isLoginException(Throwable thrownException) {
+       if (thrownException instanceof StandardException) {
+           ((StandardException) thrownException).getSQLState().equals(SQLState.LOGIN_FAILED);
+           return true;
+       }
+       return false;
+    }
+    
+    /**
      * Wrap a <code>Throwable</code> in an <code>SQLException</code>.
      *
      * @param thrownException a <code>Throwable</code>

Modified: db/derby/code/branches/10.8/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/AuthenticationTest.java
URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.8/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/AuthenticationTest.java?rev=1185298&r1=1185297&r2=1185298&view=diff
==============================================================================
--- db/derby/code/branches/10.8/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/AuthenticationTest.java
(original)
+++ db/derby/code/branches/10.8/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/AuthenticationTest.java
Mon Oct 17 17:33:23 2011
@@ -172,8 +172,6 @@ public class AuthenticationTest extends 
         Properties sysprops = new Properties();
         sysprops.put("derby.user.system", "admin");
         sysprops.put("derby.user.mickey", "mouse");
-        //Derby-4856,set the property to avoid thread dump and diagnostic info
-        sysprops.put("derby.stream.error.extendedDiagSeverityLevel","50000");
         test = DatabasePropertyTestSetup.builtinAuthentication(test,
             USERS, PASSWORD_SUFFIX);
         test = new DatabasePropertyTestSetup (test, props, true);



Mime
View raw message