db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] Created: (DERBY-4904) Plan exporter doesn't work if XPLAIN schema has special characters
Date Mon, 15 Nov 2010 13:22:13 GMT
Plan exporter doesn't work if XPLAIN schema has special characters
------------------------------------------------------------------

                 Key: DERBY-4904
                 URL: https://issues.apache.org/jira/browse/DERBY-4904
             Project: Derby
          Issue Type: Bug
          Components: Tools
    Affects Versions: 10.7.1.0
            Reporter: Knut Anders Hatlen


If the XPLAIN schema contains lowercase characters (e.g, CALL SYSCS_UTIL.SYSCS_SET_XPLAIN_SCHEMA('my_stats_schema')),
the plan exporter will fail with

ERROR 42Y07: Schema 'MY_STATS_SCHEMA' does not exist
	at org.apache.derby.iapi.error.StandardException.newException(StandardException.java:286)
	at org.apache.derby.impl.sql.catalog.DataDictionaryImpl.getSchemaDescriptor(DataDictionaryImpl.java:1528)
(...)
	at org.apache.derby.impl.jdbc.EmbedStatement.executeQuery(EmbedStatement.java:153)
	at org.apache.derby.impl.tools.planexporter.AccessDatabase.noOfNodes(AccessDatabase.java:417)
	at org.apache.derby.impl.tools.planexporter.AccessDatabase.initializeDataArray(AccessDatabase.java:323)
	at org.apache.derby.tools.PlanExporter.main(PlanExporter.java:59)

If the schema contains spaces or special characters, like single-quotes or double-quotes,
it will get a syntax error instead:

ij> CALL SYSCS_UTIL.SYSCS_SET_RUNTIMESTATISTICS(1);
ij> CALL SYSCS_UTIL.SYSCS_SET_XPLAIN_SCHEMA('my "quoted" schema');
ij> SELECT * FROM SYSIBM.SYSDUMMY1;

$ java org.apache.derby.tools.PlanExporter jdbc:derby:db 'my "quoted" schema' 6f2b430a-012c-4ec6-f4a1-00000d4d4fe5
-xml plan.xml -html plan.html
ERROR 42X01: Syntax error: Encountered "schema" at line 1, column 34.
    at org.apache.derby.iapi.error.StandardException.newException(StandardException.java:286)
    at org.apache.derby.impl.sql.compile.ParserImpl.parseStatement(ParserImpl.java:155)
(...)
	at org.apache.derby.impl.jdbc.EmbedStatement.executeQuery(EmbedStatement.java:153)
	at org.apache.derby.impl.tools.planexporter.AccessDatabase.noOfNodes(AccessDatabase.java:417)
	at org.apache.derby.impl.tools.planexporter.AccessDatabase.initializeDataArray(AccessDatabase.java:323)
	at org.apache.derby.tools.PlanExporter.main(PlanExporter.java:59)


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


Mime
View raw message