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