db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kathey Marsden (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-1272) Change sysinfo to print to error log (derby.log) on boot of derby if derby.stream.error.logSeverityLevel=0
Date Mon, 03 Dec 2007 18:42:43 GMT

    [ https://issues.apache.org/jira/browse/DERBY-1272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12547932

Kathey Marsden commented on DERBY-1272:

Hi Ramin,

Thank you for your continued work on this patch. With the patch I do not see the initializer
error pointing my classpath to the classes directory, but I don't really understand how your
changes sought to fix it. Could you explain.

Running lang/triggerGeneral.sql I see a JVM crash with both IBM 1.5 and Sun 1.6 JDK's.  The
problem seems to arise from the fact that sysinfo registers the JCC driver in the following
code in
package org.apache.derby.impl.tools.sysinfo.Main.checkFile(String filename)

		    c = Class.forName("com.ibm.db2.jcc.DB2Driver");
		    m = c.getMethod("getJCCBuildNumber", null);
		    o = c.newInstance();
		    build = (Integer)m.invoke(o,null);
}	} catch (ClassNotFoundException cnfe) {
		    c = Class.forName("com.ibm.db2.jcc.DB2Version");
		    m = c.getMethod("getBuildNumber", null);
		    o = c.newInstance();
		    build = (Integer)m.invoke(o,null);

Then there seems to be some bug in JCC that we are getting the T2 driver for 
jdbc:default:connection.  But it seems like a bad side effect of sysinfo that the JCC Driver
is getting loaded.  I think it would be acceptable for sysinfo to just use 

Here is the thread that fails.

NULL           ----------------------
3XMTHREADINFO      "main" (TID:0x41431300, sys_thread_t:0x000382D8, state:R, native ID:0x000012E0)
4XESTACKTRACE          at com/ibm/db2/jcc/uw/UWConnection.DBConnect(Native Method)
4XESTACKTRACE          at com/ibm/db2/jcc/uw/UWConnection.a(UWConnection.java:673)
4XESTACKTRACE          at com/ibm/db2/jcc/uw/f.b(f.java:254)
4XESTACKTRACE          at com/ibm/db2/jcc/uw/UWConnection.a(UWConnection.java:610)
4XESTACKTRACE          at com/ibm/db2/jcc/uw/UWConnection.b(UWConnection.java:463)
4XESTACKTRACE          at com/ibm/db2/jcc/uw/UWConnection.<init>(UWConnection.java:255)
4XESTACKTRACE          at com/ibm/db2/jcc/DB2Driver.connect(DB2Driver.java:236)
4XESTACKTRACE          at java/sql/DriverManager.getConnection(DriverManager.java:562)
4XESTACKTRACE          at java/sql/DriverManager.getConnection(DriverManager.java:208)
4XESTACKTRACE          at org/apache/derbyTesting/functionTests/tests/lang/userDefMethods.derby388(userDefMethods.java:89)
4XESTACKTRACE          at org/apache/derby/exe/ac12564092x0116xa132x1d95xffffa334cdd074.g0(Bytecode
4XESTACKTRACE          at sun/reflect/NativeMethodAccessorImpl.invoke0(Native Method)
4XESTACKTRACE          at sun/reflect/NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64(Compiled
4XESTACKTRACE          at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43(Compiled
4XESTACKTRACE          at java/lang/reflect/Method.invoke(Method.java:615(Compiled Code))
4XESTACKTRACE          at org/apache/derby/impl/services/reflect/ReflectMethod.invoke(ReflectMethod.java:46)
4XESTACKTRACE          at org/apache/derby/impl/sql/execute/CallStatementResultSet.open(CallStatementResultSet.java:57)
4XESTACKTRACE          at org/apache/derby/impl/sql/GenericPreparedStatement.execute(GenericPreparedStatement.java:370(Compiled
4XESTACKTRACE          at org/apache/derby/impl/jdbc/EmbedStatement.executeStatement(EmbedStatement.java:1228)
4XESTACKTRACE          at org/apache/derby/impl/jdbc/EmbedStatement.execute(EmbedStatement.java:618)
4XESTACKTRACE          at org/apache/derby/impl/jdbc/EmbedStatement.execute(EmbedStatement.java:550)
4XESTACKTRACE          at org/apache/derby/impl/tools/ij/ij.executeImmediate(ij.java:330(Compiled
4XESTACKTRACE          at org/apache/derby/impl/tools/ij/utilMain.doCatch(utilMain.java:508)
4XESTACKTRACE          at org/apache/derby/impl/tools/ij/utilMain.runScriptGuts(utilMain.java:350)
4XESTACKTRACE          at org/apache/derby/impl/tools/ij/utilMain.go(utilMain.java:248)
4XESTACKTRACE          at org/apache/derby/impl/tools/ij/Main.go(Main.java:215)
4XESTACKTRACE          at org/apache/derby/impl/tools/ij/Main.mainCore(Main.java:181)
4XESTACKTRACE          at org/apache/derby/impl/tools/ij/Main.main(Main.java:73)
4XESTACKTRACE          at org/apache/derby/tools/ij.main(ij.java:59)

There is a white space diff in AllPackages.  There is commented out code that should be removed.
 There should be comments explaining the class DumpTempWriter, what bothPlaces means and the
run method.

> Change sysinfo to print to error log (derby.log) on boot of derby  if derby.stream.error.logSeverityLevel=0
> -----------------------------------------------------------------------------------------------------------
>                 Key: DERBY-1272
>                 URL: https://issues.apache.org/jira/browse/DERBY-1272
>             Project: Derby
>          Issue Type: Improvement
>          Components: Tools
>    Affects Versions:,,
>            Reporter: Kathey Marsden
>            Assignee: Ramin Moazeni
>            Priority: Minor
>         Attachments: derby-1272-pre.diff, derby-1272-pre2.diff, derby-1272-pre3.diff,
derby-1272-v4.diff, DERBY-1272v5.diff, DERBY-1272v6.diff, DERBY-1272v6.stat, DERBY-1272v8.diff
> It is often very difficult to collect correct sysinfo output from user environments because
 sysinfo run from the commandline does not have the same classpath as the jvm that started
Derby or Derby was loaded with a custom classloader.
> It would be very helpful in assisting users in diagnosing their issues if sysinfo dumped
to the error log if  derby.stream.error.logSeverityLevel=0  or even by default.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message