I applied the patch and ran the TCK and the test still fails for me.

19:01:07,709 (main) INFO [org.apache.jdo.tck] - Exception during setUp or runtest: junit.framework.AssertionFailedError: Assertion A14.6.2-60 (SupportedDateMethods) failed:
Wrong query result:
query: SELECT FROM org.apache.jdo.tck.pc.company.Person WHERE birthdate.getDate() == 10
expected: java.util.ArrayList of size 1
[FullTimeEmployee(1, emp1Last, emp1First, born 9/Jun/1970, phone {work=123456-1, home=1111}, hired 31/Dec/1998, weeklyhours 40.0, $20000.0)]
got:      java.util.ArrayList of size 0
[]
    at junit.framework.Assert.fail(Assert.java:47)
    at org.apache.jdo.tck.JDO_Test.fail(JDO_Test.java:719)
    at org.apache.jdo.tck.query.QueryTest.queryFailed(QueryTest.java:518)
at org.apache.jdo.tck.query.QueryTest.checkQueryResultWithoutOrder(QueryTest.java:548)
    at org.apache.jdo.tck.query.QueryTest.execute(QueryTest.java:1293)
    at org.apache.jdo.tck.query.QueryTest.execute(QueryTest.java:1133)
at org.apache.jdo.tck.query.QueryTest.executeAPIQuery(QueryTest.java:1069) at org.apache.jdo.tck.query.QueryTest.executeAPIQuery(QueryTest.java:1049) at org.apache.jdo.tck.query.jdoql.methods.SupportedDateMethods.executeQuery(SupportedDateMethods.java:143) at org.apache.jdo.tck.query.jdoql.methods.SupportedDateMethods.testGetDate(SupportedDateMethods.java:118)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at junit.framework.TestCase.runTest(TestCase.java:154)
    at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:284)
    at junit.framework.TestResult$1.protect(TestResult.java:106)
    at junit.framework.TestResult.runProtected(TestResult.java:124)
    at junit.framework.TestResult.run(TestResult.java:109)
    at junit.framework.TestCase.run(TestCase.java:118)
    at junit.framework.TestSuite.runTest(TestSuite.java:208)
    at junit.framework.TestSuite.run(TestSuite.java:203)
    at junit.framework.TestSuite.runTest(TestSuite.java:208)
    at junit.framework.TestSuite.run(TestSuite.java:203)
    at junit.textui.TestRunner.doRun(TestRunner.java:116)
at org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:108) at org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:148) at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:123)

-- Michelle
On 5/19/2013 1:44 PM, Michael Bouschen wrote:
Hi,

[...]
1. TCK query test failure: possible time zone issue in SupportedDateMethods: https://issues.apache.org/jira/browse/JDO-720

Still fails in time zones west of GMT. It looks like there is a mismatch between java Date types and database Timestamp type. Timestamps are generally stored in UTC regardless of the location of the client. So when querying for DAY in the database we would have to know what the day is in UTC. Propose changing the database type to DATE and see if that has any effect. AI Michael change database type to DATE.
I attached a patch to the JIRA: https://issues.apache.org/jira/browse/JDO-720

It includes all the changes from the previous patch TimeZoneChanges.patch (removing the time zone setting) plus it changes the column type from TIMSTAMP to DATE for the columns HIREDATE, BIRTHDATE and FOUNDEDDATE.

Regards Michael


Reply via email to