Hi,
I saw a post just the other day detailing how to fix a CRC error
although this does not cover my problem because the corruption does not
surface during boot rather on query. I use Sonar which uses Derby
embedded, but unfortunately one of the versions which is known to
corrupt data, 10.3.1.4.
OK, so the problem is that on query the Debry instance just shuts down
detecting the CRC error. I used a hex editor to fix the CRC (it's in the
first page of the file) but then I get another error (see below). Could
someone help me fix this even by sending her/him the whole database (not
huge, 240MB uncompressed)?
Thanks,
Gabor 'Morc' Kormos.
2009-06-17 09:52:59.011 GMT Thread[DRDAConnThread_9,5,derby.daemons]
(XID = 151484434), (SESSIONID = 2), (DATABASE = sonar), (DRDAID =
NF000001.GCDA-4269129726538145963{4}), Failed Statement is: select *
from project_measures
java.lang.IllegalArgumentException: Bit position 1 is outside the legal
range
at
org.apache.derby.iapi.services.io.FormatableBitSet.checkPosition(Unknown
Source)
at org.apache.derby.iapi.services.io.FormatableBitSet.isSet(Unknown
Source)
at
org.apache.derby.impl.store.raw.data.AllocExtent.getPageStatus(Unknown
Source)
at
org.apache.derby.impl.store.raw.data.AllocationCache.getPageStatus(Unknown
Source)
at
org.apache.derby.impl.store.raw.data.FileContainer.pageValid(Unknown Source)
at
org.apache.derby.impl.store.raw.data.FileContainer.getUserPage(Unknown
Source)
at
org.apache.derby.impl.store.raw.data.FileContainer.getPage(Unknown Source)
at
org.apache.derby.impl.store.raw.data.BaseContainerHandle.getPage(Unknown
Source)
at
org.apache.derby.impl.store.access.heap.HeapConglomerateFactory.readConglomerate(Unknown
Source)
at
org.apache.derby.impl.store.access.RAMAccessManager.conglomCacheFind(Unknown
Source)
at
org.apache.derby.impl.store.access.RAMTransaction.findExistingConglomerate(Unknown
Source)
at
org.apache.derby.impl.store.access.RAMTransaction.openStoreCost(Unknown
Source)
at
org.apache.derby.impl.sql.compile.CompilerContextImpl.getStoreCostController(Unknown
Source)
at
org.apache.derby.impl.sql.compile.FromBaseTable.getStoreCostController(Unknown
Source)
at
org.apache.derby.impl.sql.compile.FromBaseTable.estimateCost(Unknown Source)
at
org.apache.derby.impl.sql.compile.OptimizerImpl.estimateTotalCost(Unknown
Source)
at
org.apache.derby.impl.sql.compile.OptimizerImpl.costBasedCostOptimizable(Unknown
Source)
at
org.apache.derby.impl.sql.compile.OptimizerImpl.costOptimizable(Unknown
Source)
at
org.apache.derby.impl.sql.compile.FromBaseTable.optimizeIt(Unknown Source)
at
org.apache.derby.impl.sql.compile.ProjectRestrictNode.optimizeIt(Unknown
Source)
at
org.apache.derby.impl.sql.compile.OptimizerImpl.costPermutation(Unknown
Source)
at org.apache.derby.impl.sql.compile.SelectNode.optimize(Unknown Source)
at
org.apache.derby.impl.sql.compile.DMLStatementNode.optimizeStatement(Unknown
Source)
at
org.apache.derby.impl.sql.compile.CursorNode.optimizeStatement(Unknown
Source)
at org.apache.derby.impl.sql.GenericStatement.prepMinion(Unknown Source)
at org.apache.derby.impl.sql.GenericStatement.prepare(Unknown Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(Unknown
Source)
at
org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(Unknown Source)
at
org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(Unknown Source)
at
org.apache.derby.impl.jdbc.EmbedPreparedStatement40.<init>(Unknown Source)
at org.apache.derby.jdbc.Driver40.newEmbedPreparedStatement(Unknown
Source)
at
org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown Source)
at
org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown Source)
at
org.apache.derby.impl.drda.DRDAStatement.prepareStatementJDBC3(Unknown
Source)
at org.apache.derby.impl.drda.DRDAStatement.prepare(Unknown Source)
at org.apache.derby.impl.drda.DRDAStatement.explicitPrepare(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.parsePRPSQLSTT(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source)