[ 
https://issues.apache.org/jira/browse/DERBY-3607?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mike Matrigali updated DERBY-3607:
----------------------------------


If you create the db and then use a copy of it for each iteration then that is 
ok.  The nature of the corruption is that once it happens it will not get 
fixed, so if you use a broken one for the next test, the test does not tell us 
anything.  My assumption
of what is happening is that the page actually gets corrupted before it gets 
recognized.  This may be happening one or
more complete startup/shutdown phases before it actually gets noticed.  

I didn't completely understand your answer about online backup.  Was an online 
backup ever taken during the
reproduction, anytime from starting with the fresh db until the corruption 
happens.

It is not clear to me your application knows exactly when the corruption 
happens.  You still have not described what work is done in each 
startup/shutdown phase.  If it is exactly the same work then it is likely it 
does know.  But if there is some
random/test work it may be that you don't see the page in one iteration.  You 
could run a consistency check in between
each phase to definitely tell when the corruption happens.

The best case would be to attach the application/db to this jira for anyone to 
reproduce. What is the zipped size of the jars and db?  

> Invalid checksum error in Derby 10.3.2.1
> ----------------------------------------
>
>                 Key: DERBY-3607
>                 URL: https://issues.apache.org/jira/browse/DERBY-3607
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.3.2.1, 10.4.1.3
>         Environment: OS-WIN XP SP2, 1.86GHz, 2GB, JVM 1.5, disk caching 
> disabled, Hibernate 3.1.1.RC3,c3p0
>            Reporter: Shahbaz
>            Priority: Critical
>         Attachments: DB_10.4logs.zip, derby.log, derby.log, derby.log, 
> hibernate.cfg.xml, hibernate.cfg.xml, hibernate.cfg.xml, modules.properties, 
> SingleThread Test.zip
>
>
> I am getting this execption when ever I try to restart my application
> java.sql.SQLException: Invalid checksum on Page Page(0,Container(0, 2033)), 
> expected=2,731,401,932, on-disk version=2,375,776,513, page dump follows: Hex 
> dump:
> 00000000: 0076 0000 0001 0000 0000 0000 0002 0000  .v..............
> 00000010: 0000 0006 0000 0000 0000 0000 0000 0000  ................
> 00000020: 0000 0000 0001 0000 0000 0000 0000 0000  ................
> 00000030: 0000 0000 0000 0000 0000 0000 ffff ffff  ................
> 00000040: ffff ffff 0000 0000 0000 0000 0000 0000  ................
> 00000050: 0000 0000 0000 0000 0000 0000 0000 0000  ................
> 00000060: 0000 0000 0000 0000 0000 0000 5000 0000  ............P...
> at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown 
> Source)
>       at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown 
> Source)
>       at 
> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown 
> Source)
>       at 
> org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown 
> Source)
>       at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown 
> Source)
>       at org.apache.derby.impl.jdbc.ConnectionChild.handleException(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.EmbedCallableStatement.executeStatement(Unknown 
> Source)
>       at org.apache.derby.impl.jdbc.EmbedPreparedStatement.execute(Unknown 
> Source)
>       at 
> com.mchange.v2.c3p0.impl.NewProxyCallableStatement.execute(NewProxyCallableStatement.java:3044)
>       at 
> ae.sphere.arena.database.management.backup.BackupStategy.createBackup(BackupStategy.java:56)
>       at 
> ae.sphere.arena.database.management.backup.BackupStategy.doSchedulerJob(BackupStategy.java:41)
>       at 
> ae.sphere.arena.common.jobscheduler.Scheduler$1.run(Scheduler.java:49)
>       at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
> 00000070: 0000 0000 0000 0000 0000 0000 0000 0000  ................
> 00000080: 0000 0000 0000 0000 0000 0000 0000 0000  ................
> 00000090: 0000 0000 0000 0000 0000 0000 0000 0000  ................
> 000000a0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
> 000000b0: 0000 0

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to