Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 81302 invoked from network); 23 Nov 2007 15:16:02 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Nov 2007 15:16:02 -0000 Received: (qmail 26178 invoked by uid 500); 23 Nov 2007 15:15:49 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 25955 invoked by uid 500); 23 Nov 2007 15:15:48 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 25946 invoked by uid 99); 23 Nov 2007 15:15:48 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Nov 2007 07:15:48 -0800 X-ASF-Spam-Status: No, hits=-1.0 required=10.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [192.18.6.21] (HELO gmp-eb-mail-1.sun.com) (192.18.6.21) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Nov 2007 15:15:49 +0000 Received: from fe-emea-10.sun.com (gmp-eb-lb-2-fe1.eu.sun.com [192.18.6.10]) by gmp-eb-mail-1.sun.com (8.13.7+Sun/8.12.9) with ESMTP id lANFFSZw009872 for ; Fri, 23 Nov 2007 15:15:28 GMT Received: from conversion-daemon.fe-emea-10.sun.com by fe-emea-10.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007)) id <0JRY00I01SPYWW00@fe-emea-10.sun.com> (original mail from Dag.Wanvik@Sun.COM) for derby-dev@db.apache.org; Fri, 23 Nov 2007 15:15:28 +0000 (GMT) Received: from khepri23.norway.sun.com ([129.159.112.235]) by fe-emea-10.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007)) with ESMTPSA id <0JRY006DGT1R2620@fe-emea-10.sun.com> for derby-dev@db.apache.org; Fri, 23 Nov 2007 15:15:28 +0000 (GMT) Date: Fri, 23 Nov 2007 16:15:27 +0100 From: "Dag H. Wanvik" Subject: error? DatabaseMetaDataQuery on read-only database gives error Sender: Dag.Wanvik@Sun.COM To: derby-dev@db.apache.org Reply-to: Dag.Wanvik@Sun.COM Message-id: <18246.61071.146747.735952@gargle.gargle.HOWL> MIME-version: 1.0 X-Mailer: VM 8.0.2-487 under Emacs 22.1.1 (i386-pc-solaris2.10) Content-type: text/plain; charset=us-ascii Content-transfer-encoding: 7BIT X-Virus-Checked: Checked by ClamAV on apache.org With released 10.3.1.4, I tried to connect to toursdb, which was protected, so I had read-only access to it. Connecting with ij, a "show tables" gave error: > ERROR 40XD1: Container was opened in read-only mode. Apparently because Derby attempt to store a SPS for the query.. Is to be expected or is it an error? I thought Derby should handle this by not storing any SPSes.. Using 10.3 trunk to access the same database, I even got an empty pointer, see enclosed stack trace. This is surely a bug, When I made the trunk version of toursdb read-only, I was back to 40XD1, though. The latter may possibly be related to DERBY-1107? Dag ---------------------------------------- 10.3 trunk ij run khepri23:vm-mail$ java -Dij.exceptionTrace=true org.apache.derby.tools.ij ij version 10.3 ij> connect 'jdbc:derby:/usr/local/share/java/javadb/JavaDB-10.3.1.4/demo/databases/toursdb'; ij> show tables; ERROR XJ001: Java exception: ': java.lang.NullPointerException'. java.sql.SQLException: Java exception: ': java.lang.NullPointerException'. at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:95) at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Util.java:88) at org.apache.derby.impl.jdbc.Util.javaException(Util.java:245) at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java:403) at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java:346) at org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java:1573) at org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java:81) at org.apache.derby.impl.jdbc.EmbedPreparedStatement.(EmbedPreparedStatement.java:144) at org.apache.derby.impl.jdbc.EmbedPreparedStatement20.(EmbedPreparedStatement20.java:82) at org.apache.derby.impl.jdbc.EmbedPreparedStatement30.(EmbedPreparedStatement30.java:63) at org.apache.derby.impl.jdbc.EmbedPreparedStatement40.(EmbedPreparedStatement40.java:40) at org.apache.derby.jdbc.Driver40.newEmbedPreparedStatement(Driver40.java:105) at org.apache.derby.impl.jdbc.EmbedConnection.prepareMetaDataStatement(EmbedConnection.java:1925) at org.apache.derby.impl.jdbc.EmbedDatabaseMetaData.prepareSPS(EmbedDatabaseMetaData.java:3665) at org.apache.derby.impl.jdbc.EmbedDatabaseMetaData.getPreparedQueryUsingSystemTables(EmbedDatabaseMetaData.java:3502) at org.apache.derby.impl.jdbc.EmbedDatabaseMetaData.getPreparedQuery(EmbedDatabaseMetaData.java:3550) at org.apache.derby.impl.jdbc.EmbedDatabaseMetaData.getPreparedQuery(EmbedDatabaseMetaData.java:3575) at org.apache.derby.impl.jdbc.EmbedDatabaseMetaData.getTables(EmbedDatabaseMetaData.java:1717) at org.apache.derby.impl.tools.ij.ij.showTables(ij.java:589) at org.apache.derby.impl.tools.ij.ij.ShowStatement(ij.java:1378) at org.apache.derby.impl.tools.ij.ij.ijStatement(ij.java:942) at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(utilMain.java:342) at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:262) at org.apache.derby.impl.tools.ij.Main.go(Main.java:215) at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:181) at org.apache.derby.impl.tools.ij.Main14.main(Main14.java:56) at org.apache.derby.tools.ij.main(ij.java:71) Caused by: java.sql.SQLException: Java exception: ': java.lang.NullPointerException'. at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:45) at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(SQLExceptionFactory40.java:135) at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:70) ... 26 more Caused by: java.lang.NullPointerException at org.apache.derby.impl.sql.compile.ExecSPSNode.generate(ExecSPSNode.java:185) at org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:447) at org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:88) at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:753) at org.apache.derby.impl.jdbc.EmbedPreparedStatement.(EmbedPreparedStatement.java:129) ... 19 more ij>