Daniel Noll wrote:
Hi all.

I'm getting this unusual exception during prepareStatement():

Caused by: org.apache.derby.client.am.DisconnectException: A network protocol 
error was encountered and the connection has been terminated: the requested 
command encountered an unarchitected and implementation-specific condition for 
which there was no architected message
        at org.apache.derby.client.net.NetConnectionReply.parseCMDCHKRM(Unknown 
Source)
        at 
org.apache.derby.client.net.NetStatementReply.parsePrepareError(Unknown Source)
        at 
org.apache.derby.client.net.NetStatementReply.parsePRPSQLSTTreply(Unknown 
Source)
        at 
org.apache.derby.client.net.NetStatementReply.readPrepareDescribeOutput(Unknown 
Source)
        at 
org.apache.derby.client.net.StatementReply.readPrepareDescribeOutput(Unknown 
Source)
        at 
org.apache.derby.client.net.NetStatement.readPrepareDescribeOutput_(Unknown 
Source)
        at 
org.apache.derby.client.am.Statement.readPrepareDescribeOutput(Unknown Source)
        at 
org.apache.derby.client.am.PreparedStatement.readPrepareDescribeInputOutput(Unknown
 Source)
        at 
org.apache.derby.client.am.PreparedStatement.flowPrepareDescribeInputOutput(Unknown
 Source)
        at org.apache.derby.client.am.PreparedStatement.prepare(Unknown Source)
        at org.apache.derby.client.am.Connection.prepareStatementX(Unknown 
Source)

The connection is from the host to itself so network issues should hopefully
be out of the picture.  Any idea what causes this error?  The derby log is 
completely
empty this time (no error messages, no success messages either.)

The call stack indicates that the server has sent and CMDCHKRM command which I should a reply indicating that the client, as part of the prepare message, sent something it was not able to understand. I looked at the Network Server code, and I could not find that it would necessarily write something if an error happens during prepare, regardless of what debug flags you might turn on. Hence, I think the best bet is to turn on tracing on the client and/or serve to see if we can see something wrong with the message being sent.

--
Øystein


Reply via email to