You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Rick Hillegas (JIRA)" <ji...@apache.org> on 2014/03/05 20:36:42 UTC

[jira] [Updated] (DERBY-6496) Optional tool registration may fail because the CompilerContext is not always available at execution time.

     [ https://issues.apache.org/jira/browse/DERBY-6496?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas updated DERBY-6496:
---------------------------------

    Attachment: derby-6496-01-aa-useClassFactoryContext.diff

Attaching derby-6496-01-aa-useClassFactoryContext.diff. This patch makes the optional tool loader get the ClassFactory out of the ClassFactoryContext rather than the CompilerContext. Hopefully, that is a more reliable source for class factories. I am running tests now.


Touches the following files:

----------

M       java/engine/org/apache/derby/catalog/Java5SystemProcedures.java

The fix.

----------

A       java/testing/org/apache/derbyTesting/functionTests/tests/lang/Test_6496.java
M       java/testing/org/apache/derbyTesting/functionTests/tests/lang/_Suite.java

A test case which fails without the fix but succeeds with it.


> Optional tool registration may fail because the CompilerContext is not always available at execution time.
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-6496
>                 URL: https://issues.apache.org/jira/browse/DERBY-6496
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.11.0.0
>            Reporter: Rick Hillegas
>            Assignee: Rick Hillegas
>         Attachments: derby-6496-01-aa-useClassFactoryContext.diff
>
>
> For reasons which elude me, the CompilerContext is sometimes available at execution time and sometimes not. When the CompilerContext is not available at execution time, optional tool loading fails on an NPE:
> Caused by: java.lang.NullPointerException
> 	at org.apache.derby.catalog.Java5SystemProcedures.SYSCS_REGISTER_TOOL(Java5SystemProcedures.java:104)
> 	at org.apache.derby.exe.ac4d3680a5x0144x93adx0136xffffe1d7aa3e0.g0(Unknown Source)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at org.apache.derby.impl.services.reflect.ReflectMethod.invoke(ReflectMethod.java:46)
> 	at org.apache.derby.impl.sql.execute.CallStatementResultSet.open(CallStatementResultSet.java:75)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(GenericPreparedStatement.java:470)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.execute(GenericPreparedStatement.java:349)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java:1338)



--
This message was sent by Atlassian JIRA
(v6.2#6252)