You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-user@db.apache.org by Shaoyong Wang <sh...@ecompex.com> on 2008/04/30 19:39:33 UTC

java.sql.SQLException: A network protocol error

We are using Derby 10.3.1.4. Occasionally, we saw the following error. Can
anybody tell me how to get around this problem? Thanks. 

 

 

Caused by: java.sql.SQLException: 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.am.SQLExceptionFactory.getSQLException(Unknown
Source)

      at org.apache.derby.client.am.SqlException.getSQLException(Unknown
Source)

      at org.apache.derby.client.am.Connection.prepareStatement(Unknown
Source)

      at
org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.doPrepareStatem
ent(BaseWrapperManagedConnection.java:349)

      at
org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.prepareStatemen
t(BaseWrapperManagedConnection.java:344)

      at
org.jboss.resource.adapter.jdbc.WrappedConnection.prepareStatement(WrappedCo
nnection.java:187)

      at
org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java
:505)

      at
org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java
:423)

      at
org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.jav
a:139)

      at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1547)

      at org.hibernate.loader.Loader.doQuery(Loader.java:673)

      at
org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.ja
va:236)

      at org.hibernate.loader.Loader.doList(Loader.java:2220)

      ... 70 more

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(Unkn
own 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)

      ... 81 more

 

 

In derby.log, we find something like: 

 

------------  BEGIN SHUTDOWN ERROR STACK -------------

 

ERROR XSDG2: Invalid checksum on Page Page(2417,Container(0, 3872)),
expected=1,362,834,019, on-disk version=3,471,158,983, page dump follows:
Hex dump:

 

..

 

      at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)

      at
org.apache.derby.impl.store.raw.data.StoredPage.validateChecksum(Unknown
Source)

      at
org.apache.derby.impl.store.raw.data.StoredPage.initFromData(Unknown Source)

      at org.apache.derby.impl.store.raw.data.CachedPage.setIdentity(Unknown
Source)

      at
org.apache.derby.impl.services.cache.CachedItem.takeOnIdentity(Unknown
Source)

      at org.apache.derby.impl.services.cache.Clock.addEntry(Unknown Source)

      at org.apache.derby.impl.services.cache.Clock.find(Unknown Source)

      at org.apache.derby.impl.store.raw.data.FileContainer.initPage(Unknown
Source)

      at org.apache.derby.impl.store.raw.data.FileContainer.newPage(Unknown
Source)

      at org.apache.derby.impl.store.raw.data.BaseContainer.addPage(Unknown
Source)

      at
org.apache.derby.impl.store.raw.data.BaseContainerHandle.addPage(Unknown
Source)

      at
org.apache.derby.impl.store.access.heap.HeapController.doInsert(Unknown
Source)

      at
org.apache.derby.impl.store.access.heap.HeapController.insertAndFetchLocatio
n(Unknown Source)

      at org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown
Source)

      at
org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown
Source)

      at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown
Source)

      at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown
Source)

      at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown
Source)

      at
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown
Source)

      at org.apache.derby.impl.jdbc.EmbedPreparedStatement.execute(Unknown
Source)

      at org.apache.derby.impl.drda.DRDAStatement.execute(Unknown Source)

      at
org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTTobjects(Unknown
Source)

      at org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTT(Unknown
Source)

      at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown
Source)

      at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source)

 

 


Re: java.sql.SQLException: A network protocol error

Posted by Knut Anders Hatlen <Kn...@Sun.COM>.
Shaoyong Wang <sh...@ecompex.com> writes:

> We are using Derby 10.3.1.4. Occasionally, we saw the following error. Can
> anybody tell me how to get around this problem? Thanks. 
>
> Caused by: java.sql.SQLException: 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
>  
[snip]
>
> In derby.log, we find something like: 
>
>  
>
> ------------  BEGIN SHUTDOWN ERROR STACK -------------
>
>  
>
> ERROR XSDG2: Invalid checksum on Page Page(2417,Container(0, 3872)),
> expected=1,362,834,019, on-disk version=3,471,158,983, page dump follows:
> Hex dump:

Hi Shaoyong,

I'm afraid this means that your database is corrupted, so you'll
probably have to restore it from backup.

In the latest Derby release (10.4.1.3) we fixed a bug that could lead to
corruption, so I would recommend that you upgrade to 10.4.1.3 (or to
10.3.3.x which is probably going to be released in a week or two). Note
that if your database has already been corrupted, upgrading won't help.

-- 
Knut Anders