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 Katherine Marsden <km...@sbcglobal.net> on 2012/06/08 00:45:13 UTC

Head's up for HP corruption issue

Hello Derby users,

I wanted to give a head's up on an anecdotal report of a  possible 
serious java 6 HP hotspot  issue which can corrupt the database.   I 
don't have versions unfortunately, but do know the issue did not 
reproduce with -Xint and that user resolved the issue by upgrading to 
the latest java 6 service release on HP.

One important thing to note is that  there is not currently a volunteer  
in the community that runs Derby tests on HP and posts results.  I would 
suggest running Derby tests before deploying in production on any 
untested JVM.

It would be wonderful to see a volunteer to test 10.9. The community is 
testing the current release candidate. 
http://wiki.apache.org/db-derby/DerbyTenNineOneRelease


Below is the stack trace, but of course by the time you see this, your 
database is probably corrupted.


Thread[derby.rawStoreDaemon,5,derby.daemons] Cleanup action starting
java.lang.ArrayIndexOutOfBoundsException
          at 
org.apache.derby.impl.store.raw.data.StoredPage.compressPage(Unknown Source)
          at 
org.apache.derby.impl.store.raw.data.StoredPage.purgeRecord(Unknown Source)
          at 
org.apache.derby.impl.store.raw.data.PurgeOperation.doMe(Unknown Source)
          at 
org.apache.derby.impl.store.raw.log.FileLogger.logAndDo(Unknown Source)
          at org.apache.derby.impl.store.raw.xact.Xact.logAndDo(Unknown 
Source)
          at 
org.apache.derby.impl.store.raw.data.LoggableActions.doAction(Unknown 
Source)
          at 
org.apache.derby.impl.store.raw.data.LoggableActions.actionPurge(Unknown 
Source)
          at 
org.apache.derby.impl.store.raw.data.BasePage.purgeAtSlot(Unknown Source)
          at 
org.apache.derby.impl.store.access.btree.BranchControlRow.shrinkFor(Unknown 
Source)
          at 
org.apache.derby.impl.store.access.btree.BranchControlRow.shrinkFor(Unknown 
Source)
          at 
org.apache.derby.impl.store.access.btree.BTreePostCommit.doShrink(Unknown Source)
          at 
org.apache.derby.impl.store.access.btree.BTreePostCommit.performWork(Unknown 
Source)
          at 
org.apache.derby.impl.services.daemon.BasicDaemon.serviceClient(Unknown 
Source)
          at 
org.apache.derby.impl.services.daemon.BasicDaemon.work(Unknown Source)
          at 
org.apache.derby.impl.services.daemon.BasicDaemon.run(Unknown Source)
          at java.lang.Thread.run(Thread.java:662)
Cleanup action completed
2012-05-22 18:00:48.346 GMT Thread[derby.rawStoreDaemon,5,derby.daemons] 
Cleanup action starting
java.lang.ArrayIndexOutOfBoundsException
          at 
org.apache.derby.impl.store.raw.data.StoredPage.compressPage(Unknown Source)
          at 
org.apache.derby.impl.store.raw.data.StoredPage.purgeRecord(Unknown Source)
          at 
org.apache.derby.impl.store.raw.data.PurgeOperation.doMe(Unknown Source)
          at 
org.apache.derby.impl.store.raw.log.FileLogger.logAndDo(Unknown Source)
          at org.apache.derby.impl.store.raw.xact.Xact.logAndDo(Unknown 
Source)
          at 
org.apache.derby.impl.store.raw.data.LoggableActions.doAction(Unknown 
Source)
          at 
org.apache.derby.impl.store.raw.data.LoggableActions.actionPurge(Unknown 
Source)
          at 
org.apache.derby.impl.store.raw.data.BasePage.purgeAtSlot(Unknown Source)
          at 
org.apache.derby.impl.store.access.btree.BranchControlRow.shrinkFor(Unknown 
Source)
          at 
org.apache.derby.impl.store.access.btree.BranchControlRow.shrinkFor(Unknown 
Source)
          at 
org.apache.derby.impl.store.access.btree.BTreePostCommit.doShrink(Unknown Source)
          at 
org.apache.derby.impl.store.access.btree.BTreePostCommit.performWork(Unknown 
Source)
          at 
org.apache.derby.impl.services.daemon.BasicDaemon.serviceClient(Unknown 
Source)
          at 
org.apache.derby.impl.services.daemon.BasicDaemon.work(Unknown Source)
          at 
org.apache.derby.impl.services.daemon.BasicDaemon.run(Unknown Source)
          at java.lang.Thread.run(Thread.java:662)
Cleanup action completed

Again I apologize for the vagueness.  I just thought this was worth 
getting out there.

Kathey