[
https://issues.apache.org/jira/browse/DERBY-5964?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Knut Anders Hatlen updated DERBY-5964:
--------------------------------------
Attachment: d5964-1a-run-in-gmt.diff
One way to make the test handle the ambiguity around the DST switch, is to
force it to run in the GMT timezone, which doesn't observe DST. See the
attached patch.
I changed the local time on my computer to one hour before the switch from DST
and ran the store test suite with and without the patch. It failed without the
patch, and passed when the patch was applied.
> Timestamp comparison failure in
> AutomaticIndexStatisticsTest.testStatisticsCorrectness
> --------------------------------------------------------------------------------------
>
> Key: DERBY-5964
> URL: https://issues.apache.org/jira/browse/DERBY-5964
> Project: Derby
> Issue Type: Bug
> Components: Test
> Affects Versions: 10.10.0.0
> Reporter: Knut Anders Hatlen
> Priority: Minor
> Attachments: d5964-1a-run-in-gmt.diff
>
>
> http://dbtg.foundry.sun.com/derby/test/Daily/jvm1.5/testing/testlog/lin/1402814-suitesAll_diff.txt
> 1)
> testStatisticsCorrectness(org.apache.derbyTesting.functionTests.tests.store.AutomaticIndexStatisticsTest)junit.framework.AssertionFailedError
> at
> org.apache.derbyTesting.functionTests.tests.store.AutomaticIndexStatisticsTest.testStatisticsCorrectness(AutomaticIndexStatisticsTest.java:324)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at
> org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:117)
> at
> org.apache.derbyTesting.junit.BaseJDBCTestCase.runBareOverridable(BaseJDBCTestCase.java:424)
> at
> org.apache.derbyTesting.junit.BaseJDBCTestCase.runBare(BaseJDBCTestCase.java:441)
> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
> at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
> at junit.extensions.TestSetup.run(TestSetup.java:25)
> at
> org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
> at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
> at junit.extensions.TestSetup.run(TestSetup.java:25)
> The failure is caused by this assert:
> assertTrue(s.created.before(now));
> It might be a coincidence, but it happened the same night as Europe was
> switching from DST.
> It may also be related to DERBY-5046, where a similar assert failed because
> poor clock resolution made the two timestamps equal.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira