You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by ma...@apache.org on 2010/06/24 18:03:28 UTC

svn commit: r957597 - in /db/derby/code/branches/10.3/java/engine/org/apache/derby: iapi/reference/Property.java impl/store/raw/data/BaseDataFileFactory.java

Author: mamta
Date: Thu Jun 24 16:03:27 2010
New Revision: 957597

URL: http://svn.apache.org/viewvc?rev=957597&view=rev
Log:
Migrating DERBY-4588 to 10.3 codeline


Modified:
    db/derby/code/branches/10.3/java/engine/org/apache/derby/iapi/reference/Property.java
    db/derby/code/branches/10.3/java/engine/org/apache/derby/impl/store/raw/data/BaseDataFileFactory.java

Modified: db/derby/code/branches/10.3/java/engine/org/apache/derby/iapi/reference/Property.java
URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.3/java/engine/org/apache/derby/iapi/reference/Property.java?rev=957597&r1=957596&r2=957597&view=diff
==============================================================================
--- db/derby/code/branches/10.3/java/engine/org/apache/derby/iapi/reference/Property.java (original)
+++ db/derby/code/branches/10.3/java/engine/org/apache/derby/iapi/reference/Property.java Thu Jun 24 16:03:27 2010
@@ -75,6 +75,17 @@ public interface Property { 
 	*/
 	String LOG_SEVERITY_LEVEL = "derby.stream.error.logSeverityLevel";
 
+	/**
+	 * derby.stream.error.logBootTrace
+	 * <BR>
+	 * defaults to false. If set to true logs a stack trace to 
+	 * the error stream on successful boot or shutdown.
+	 * This can be useful when trying to debug dual boot 
+	 * scenarios especially with multiple class loaders.
+	 * 
+	 */
+	
+	String LOG_BOOT_TRACE = "derby.stream.error.logBootTrace";
         /**
 		derby.stream.error.file=<b>absolute or relative error log filename</b>
 		Takes precendence over derby.stream.error.method.

Modified: db/derby/code/branches/10.3/java/engine/org/apache/derby/impl/store/raw/data/BaseDataFileFactory.java
URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.3/java/engine/org/apache/derby/impl/store/raw/data/BaseDataFileFactory.java?rev=957597&r1=957596&r2=957597&view=diff
==============================================================================
--- db/derby/code/branches/10.3/java/engine/org/apache/derby/impl/store/raw/data/BaseDataFileFactory.java (original)
+++ db/derby/code/branches/10.3/java/engine/org/apache/derby/impl/store/raw/data/BaseDataFileFactory.java Thu Jun 24 16:03:27 2010
@@ -361,7 +361,8 @@ public class BaseDataFileFactory
         String readOnlyMsg = (isReadOnly()) 
             ? MessageService.getTextMessage(MessageId.STORE_BOOT_READONLY_MSG)
             : "";
-
+        boolean logBootTrace = Boolean.valueOf(startParams.getProperty(Property.LOG_BOOT_TRACE,
+               PropertyUtil.getSystemProperty(Property.LOG_BOOT_TRACE))).booleanValue();
 		logMsg(CheapDateFormatter.formatDate(bootTime) +
 			   MessageService.getTextMessage(MessageId.STORE_BOOT_MSG,
                                              jbmsVersion,
@@ -369,6 +370,8 @@ public class BaseDataFileFactory
                                              dataDirectory,
                                              readOnlyMsg));
 
+        if (logBootTrace)
+           Monitor.logThrowable(new Throwable("boot trace"));
 		uf = null;
 
 
@@ -466,10 +469,15 @@ public class BaseDataFileFactory
 		}
 
 		long shutdownTime = System.currentTimeMillis();
+		boolean logBootTrace = PropertyUtil.getSystemBoolean(Property.LOG_BOOT_TRACE);
 		logMsg("\n" + CheapDateFormatter.formatDate(shutdownTime) +
                 MessageService.getTextMessage(
                     MessageId.STORE_SHUTDOWN_MSG,
                     getIdentifier()));
+	
+		if (logBootTrace)
+			Monitor.logThrowable(new Throwable("shutdown trace"));
+			
 		istream.println(LINE);
 
 		if (!isCorrupt)