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 "Daniel John Debrunner (JIRA)" <de...@db.apache.org> on 2004/12/07 18:40:11 UTC

[jira] Resolved: (DERBY-62) TableName not serializable

     [ http://nagoya.apache.org/jira/browse/DERBY-62?page=history ]
     
Daniel John Debrunner resolved DERBY-62:
----------------------------------------

     Resolution: Fixed
    Fix Version: 10.1.0.0

Sending        java\engine\org\apache\derby\iapi\error\StandardException.java
Sending        java\engine\org\apache\derby\impl\jdbc\EmbedSQLException.java
Sending        java\testing\org\apache\derbyTesting\functionTests\master\closed.out
Sending        java\testing\org\apache\derbyTesting\functionTests\tests\lang\closed.java
Transmitting file data ....
Committed revision 110114.

> TableName not serializable
> --------------------------
>
>          Key: DERBY-62
>          URL: http://nagoya.apache.org/jira/browse/DERBY-62
>      Project: Derby
>         Type: Bug
>   Components: SQL
>     Reporter: Dain Sundstrom
>     Assignee: Daniel John Debrunner
>      Fix For: 10.1.0.0

>
> I'm not sure how, but sometimes an EmbedSQLException can hold on to a TableName.  Since TableName is not serializable we can not ship derby exceptions to remote clients.  It is common usage for EJB applications to simply pass exceptions through to remote clients.
> This is the exception I get when I try to serialize an EmbededSQLException... sorry this is not much help on what is causing EmbededSQLException to hold onto a table name but Java Serialization doesn't throw nice exceptions.
> 15:34:41,161 FATAL [EjbRequestHandler] Invocation result object is not serializable: org.apache.derby.impl.jdbc.EmbedSQLException
> java.io.NotSerializableException: org.apache.derby.impl.sql.compile.TableName
>         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1054)
>         at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1224)
>         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1050)
>         at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)
>         at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)
>         at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)
>         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
>         at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
>         at org.openejb.client.EJBResponse.writeExternal(EJBResponse.java:159)
>         at org.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:248)
>         at org.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:134)
>         at org.openejb.server.ejbd.EjbServer.service(EjbServer.java:76)
>         at org.openejb.server.ServiceLogger.service(ServiceLogger.java:108)
>         at org.openejb.server.ServiceAccessController.service(ServiceAccessController.java:84)
>         at org.openejb.server.ServicePool$1.run(ServicePool.java:105)
>         at java.lang.Thread.run(Thread.java:552)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira