db-derby-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Matrigali <mikem_...@sbcglobal.net>
Subject Re: Illegal Seek during SELECT
Date Fri, 27 Aug 2010 21:27:14 GMT
That is strange, if the table or index was actually bad I would
expect check table to find this kind of problem.

 From your description it has the feel of something affecting the I/O
system in memory and causing the later I/O to fail.  You included
a snip of the derby.log.  Is there anything of interest that happened
between the last boot and when you got this error?  Sometimes derby
gets errors it considers system level and it basically shuts down
the I/O system to prevent db corruption until the system is rebooted.

The error you got is from an index.  You can rebuild all the indexes
on this table by running the offline compress system procedure on table.

This is a very old version of the software, if possible you might
consider upgrading.  10.6 is the latest release at this point.


Brandon L. Duncan wrote:
> Hi all - I was wondering if anyone has any insight on to the exception 
> below. I preformed a SYSCS_CHECK_TABLE on all tables after restarting 
> Derby and all returned a 1. I also preformed disk checking on the 
> physical disk which houses the database which was clean as well. This 
> query has run successfully after the restart as well, and I'm looking to 
> see what may have caused this and how to possibly prevent a similar 
> occurrence in the future. This is version 10.2.2.0.
> 
> Thanks
> 
> 2010-08-14 07:46:26.047 GMT Thread[DRDAConnThread_13346,5,derby.daemons] 
> (XID = 79141229328), (SESSIONID = 12194), (DATABASE = 
> ../../database/xdb1), (DRDAID = 
> NF000001.P02E-953354465271340036{12196}), Cleanup action starting
> 2010-08-14 07:46:26.047 GMT Thread[DRDAConnThread_13346,5,derby.daemons] 
> (XID = 79141229328), (SESSIONID = 12194), (DATABASE = 
> ../../database/xdb1), (DRDAID = 
> NF000001.P02E-953354465271340036{12196}), Failed Statement is: SELECT * 
> FROM "EBI"."BPScriptCategories" WHERE "ID" = ?
> ERROR XSDG0: Page Page(1,Container(0, 1601)) could not be read from disk.
>     at 
> org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
>     at org.apache.derby.impl.store.raw.data.CachedPage.readPage(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.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.btree.ControlRow.Get(Unknown 
> Source)
>     at org.apache.derby.impl.store.access.btree.ControlRow.Get(Unknown 
> Source)
>     at 
> org.apache.derby.impl.store.access.btree.BTreeScan.positionAtStartForForwardScan(Unknown

> Source)
>     at 
> org.apache.derby.impl.store.access.btree.BTreeForwardScan.positionAtStartPosition(Unknown

> Source)
>     at 
> org.apache.derby.impl.store.access.btree.BTreeForwardScan.fetchRows(Unknown 
> Source)
>     at 
> org.apache.derby.impl.store.access.btree.BTreeScan.fetchNextGroup(Unknown 
> Source)
>     at 
> org.apache.derby.impl.sql.execute.BulkTableScanResultSet.reloadArray(Unknown 
> Source)
>     at 
> org.apache.derby.impl.sql.execute.BulkTableScanResultSet.getNextRowCore(Unknown 
> Source)
>     at 
> org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.getNextRow(Unknown 
> Source)
>     at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(Unknown 
> Source)
>     at org.apache.derby.impl.jdbc.EmbedResultSet.next(Unknown Source)
>     at org.apache.derby.impl.drda.DRDAConnThread.writeFDODTA(Unknown Source)
>     at org.apache.derby.impl.drda.DRDAConnThread.writeQRYDTA(Unknown Source)
>     at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown 
> Source)
>     at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source)
> ============= begin nested exception, level (1) ===========
> java.io.IOException: Illegal seek
>     at java.io.RandomAccessFile.seek(Native Method)
>     at 
> org.apache.derby.impl.store.raw.data.RAFContainer.readPage(Unknown Source)
>     at org.apache.derby.impl.store.raw.data.CachedPage.readPage(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.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.btree.ControlRow.Get(Unknown 
> Source)
>     at org.apache.derby.impl.store.access.btree.ControlRow.Get(Unknown 
> Source)
>     at 
> org.apache.derby.impl.store.access.btree.BTreeScan.positionAtStartForForwardScan(Unknown

> Source)
>     at 
> org.apache.derby.impl.store.access.btree.BTreeForwardScan.positionAtStartPosition(Unknown

> Source)
>     at 
> org.apache.derby.impl.store.access.btree.BTreeForwardScan.fetchRows(Unknown 
> Source)
>     at 
> org.apache.derby.impl.store.access.btree.BTreeScan.fetchNextGroup(Unknown 
> Source)
>     at 
> org.apache.derby.impl.sql.execute.BulkTableScanResultSet.reloadArray(Unknown 
> Source)
>     at 
> org.apache.derby.impl.sql.execute.BulkTableScanResultSet.getNextRowCore(Unknown 
> Source)
>     at 
> org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.getNextRow(Unknown 
> Source)
>     at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(Unknown 
> Source)
>     at org.apache.derby.impl.jdbc.EmbedResultSet.next(Unknown Source)
>     at org.apache.derby.impl.drda.DRDAConnThread.writeFDODTA(Unknown Source)
>     at org.apache.derby.impl.drda.DRDAConnThread.writeQRYDTA(Unknown Source)
>     at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown 
> Source)
>     at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source)
> ============= end nested exception, level (1) ===========
> 


Mime
View raw message