[ http://issues.apache.org/jira/browse/DERBY-1119?page=all ] Satheesh Bandaram closed DERBY-1119: ------------------------------------
Fix verified. > Creating a schema with DumpParseTree, DumpBindTree properties set causes > NullPointException. > -------------------------------------------------------------------------------------------- > > Key: DERBY-1119 > URL: http://issues.apache.org/jira/browse/DERBY-1119 > Project: Derby > Type: Bug > Versions: 10.2.0.0, 10.1.2.0 > Reporter: Satheesh Bandaram > Assignee: Satheesh Bandaram > Priority: Minor > Fix For: 10.2.0.0 > > Noticed it in 10.2, but also reproduces with 10.1. > Set the following property and then try creating a schema as follows: > derby.debug.true=DumpBindTree,DumpParseTree,DumpOptimizedTree > C:\p4clients\sat_52\bug>java -Dij.protocol=jdbc:derby: > org.apache.derby.tools.ij > ij version 10.2 > ij> connect 'tdb;user=sam'; > ij> create schema mysam1; > ERROR XJ001: Java exception: ': java.lang.NullPointerException'. > I suspect the problem is because DDLStatementNode.java expects an object name > that most DDL statements set, but not CreateSchemaNode.java. > > public String toString() > { > if (SanityManager.DEBUG) > { > return objectName.toString() + super.toString(); > <============== > } > else > { > return ""; > } > } > CreateSchemaNode.java: > /* > ** DDLStatementNode expects tables, null out > ** objectName explicitly to clarify that we > ** can't hang with schema.object specifiers. > */ > initAndCheck(null); > > Here is exception stack: > java.lang.NullPointerException > at > org.apache.derby.impl.sql.compile.DDLStatementNode.toString(DDLStatementNode.java:149) > at > org.apache.derby.impl.sql.compile.CreateSchemaNode.toString(CreateSchemaNode.java:94) > at > org.apache.derby.impl.sql.compile.QueryTreeNode.treePrint(QueryTreeNode.java:329) > at > org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:318) > at > org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:118) > at > org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:725) > at > org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533) > at > org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:480) > at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:313) > at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433) > at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:310) > at org.apache.derby.impl.tools.ij.Main.go(Main.java:203) > at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:169) > at org.apache.derby.impl.tools.ij.Main14.main(Main14.java:55) > at org.apache.derby.tools.ij.main(ij.java:60) > Cleanup action completed -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
