Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 3621 invoked from network); 17 Jun 2009 22:00:22 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 17 Jun 2009 22:00:22 -0000 Received: (qmail 75308 invoked by uid 500); 17 Jun 2009 22:00:33 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 75284 invoked by uid 500); 17 Jun 2009 22:00:33 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 75276 invoked by uid 99); 17 Jun 2009 22:00:33 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 17 Jun 2009 22:00:33 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 17 Jun 2009 22:00:29 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 9282329A0021 for ; Wed, 17 Jun 2009 15:00:08 -0700 (PDT) Message-ID: <418430733.1245276008599.JavaMail.jira@brutus> Date: Wed, 17 Jun 2009 15:00:08 -0700 (PDT) From: "Rick Hillegas (JIRA)" To: derby-dev@db.apache.org Subject: [jira] Updated: (DERBY-4157) Create a test to verify that virgin metadata is identical to hard-upgraded metadata In-Reply-To: <835401922.1239387915046.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/DERBY-4157?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Rick Hillegas updated DERBY-4157: --------------------------------- Attachment: derby-4157-02-ab-newtest.diff Attaching a new version of this test: derby-4157-02-ab-newtest.diff. This changes the test so that, by default, it only runs a minimal set of trajectories, viz., just those which begin with some release and then upgrade through ALL intermediate releases up to the highest release. On a set of N releases, this gives rise to only N-1 trajectories, rather than the daunting ((2**N) - N) - 1 trajectories in the full test. I think that this minimal default has some value. It would have caught the problem logged in DERBY-4214. However, it would not have caught the problem logged in DERBY-4215. With the small memory settings in the previous experiment, I ran out of memory running the full test. I increased the memory to 1G for perm gen space and 1G for heap. With that setting I was able to run for a half hour without running out of memory--then I killed the test. That may be good enough. Or it may not be. This is the new command line to run the full test: java -XX:MaxPermSize=1024m -Xmx1024m \ -DderbyTesting.allTrajectories=true \ -DderbyTesting.oldReleasePath=/Users/me/myDerbyReleaseDirectory \ -DderbyTesting.oldVersionsPath=/Users/me/fileContainingMyListOfTastyReleases \ junit.textui.TestRunner org.apache.derbyTesting.functionTests.tests.upgradeTests.UpgradeTrajectoryTest I miscalculated how long it would take to run the full test against all upgrade trajectories which are possible on my set of releases. My 14 releases give rise to 16369 trajectories. I was finding that the long trajectories were taking about 10 seconds apiece to evaluate. That's about 19 days for the whole set. Needless to say, I am not going to run this sequence on my humble machine. If you need to run a particular trajectory, you can hand-edit the makeSampleTrajectories() method and uncomment the call to it. Here's the command line to run this test against the default (minimal) set of trajectories: java -XX:MaxPermSize=1024m -Xmx1024m \ -DderbyTesting.oldReleasePath=/Users/me/myDerbyReleaseDirectory \ -DderbyTesting.oldVersionsPath=/Users/me/fileContainingMyListOfTastyReleases \ junit.textui.TestRunner org.apache.derbyTesting.functionTests.tests.upgradeTests.UpgradeTrajectoryTest This test is not wired into the regression test suite. You have to run it standalone. As a sanity check I ran the full regression suite successfully. Committed at subversion revision 785826. > Create a test to verify that virgin metadata is identical to hard-upgraded metadata > ----------------------------------------------------------------------------------- > > Key: DERBY-4157 > URL: https://issues.apache.org/jira/browse/DERBY-4157 > Project: Derby > Issue Type: Test > Components: Test > Affects Versions: 10.6.0.0 > Reporter: Rick Hillegas > Assignee: Rick Hillegas > Attachments: derby-4157-01-aa-refactor.diff, derby-4157-02-aa-newtest.diff, derby-4157-02-ab-newtest.diff > > > We should write a test to verify that the metadata is correct for each release for all hard-upgrade trajectories which terminate in that release. The test should examine all system tables. Note that if there are N releases, then there will (2N - N) - 1 trajectories to examine. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.