You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Edgar Molina (JIRA)" <ji...@apache.org> on 2018/07/12 22:28:00 UTC

[jira] [Created] (AXIS2-5923) Broken build in JDK1.8u172

Edgar Molina created AXIS2-5923:
-----------------------------------

             Summary: Broken build in JDK1.8u172
                 Key: AXIS2-5923
                 URL: https://issues.apache.org/jira/browse/AXIS2-5923
             Project: Axis2
          Issue Type: Bug
            Reporter: Edgar Molina


h1. Background

The 1st of April 2018, Namibia changed their time zone and they don't observe DST anymore, they changed from _Western African Time (WAST)_ to _Central African Time (CAST)_, this change was rolled out in JDK 1.8u161 (Search for tzdata2017c [here|http://www.oracle.com/technetwork/java/javase/tzdata-versions-138805.html], and check the database in [wikipedia|https://en.wikipedia.org/wiki/List_of_tz_database_time_zones]).

The Axis2 code in the ConverterUtil (java/org/apache/axis2/databinding/utils/ConverterUtil.java) creates a Calendar object which is historically aware (returns the date offsets for the date that is being set, in other words returns that in Feb 2007, Namibia had DST), then pulls the raw offset from the time zone, which returns the current offset (no DST) and then sets it to the calendar again.

This discrepancy causes that the calendar is off by one hour this time of the year:
{noformat}
setting time zone to Africa/Windhoek
testing with TimeZone Central African Time
uses daylight time: false
we are in daylight time: false
testValue ==> 2007-02-15T14:54:29
calendar  ==> 2007-02-15T13:54:29+02:00 <---- HERE
back      ==> 2007-02-15T14:54:29.000+03:00{noformat}
h1. Proposed Design

We can default the test date time zone to GMT+1 as WAST used to be or to a different country in this TZ. It seems that this test is very outdated as Namibia hasn't been GMT+1 for a while and currently there is no GMT+1 that observes DST in the southern hemisphere.

Therefore:

Update the offending test to switch from "Africa/Windhoek" to "Africa/Tunis" (capital of Tunisia) to fix the broken build.


{panel:title=Build Execution}
{noformat}
[INFO]
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running org.apache.axis2.databinding.utils.BeanUtilTest
[INFO] Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.418 s - in org.apache.axis2.databinding.utils.BeanUtilTest
[INFO] Running org.apache.axis2.databinding.utils.ConverterUtilTest
[ERROR] Tests run: 12, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.204 s <<< FAILURE! - in org.apache.axis2.databinding.utils.ConverterUtilTest
[ERROR] testConvertToDateTime(org.apache.axis2.databinding.utils.ConverterUtilTest)  Time elapsed: 0.027 s  <<< FAILURE!
junit.framework.ComparisonFailure: expected:<2007-02-15T1[4]:54:29> but was:<2007-02-15T1[3]:54:29>
        at junit.framework.Assert.assertEquals(Assert.java:100)
        at junit.framework.Assert.assertEquals(Assert.java:107)
        at junit.framework.TestCase.assertEquals(TestCase.java:269)
        at org.apache.axis2.databinding.utils.ConverterUtilTest.internalTestConvertToDateTime(ConverterUtilTest.java:385)
        at org.apache.axis2.databinding.utils.ConverterUtilTest.testConvertToDateTime(ConverterUtilTest.java:165)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at junit.framework.TestCase.runTest(TestCase.java:176)
        at junit.framework.TestCase.runBare(TestCase.java:141)
        at junit.framework.TestResult$1.protect(TestResult.java:122)
        at junit.framework.TestResult.runProtected(TestResult.java:142)
        at junit.framework.TestResult.run(TestResult.java:125)
        at junit.framework.TestCase.run(TestCase.java:129)
        at junit.framework.TestSuite.runTest(TestSuite.java:252)
        at junit.framework.TestSuite.run(TestSuite.java:247)
        at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:86)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:272)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:236)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
        at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:386)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:323)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:143)

[INFO] Running org.apache.axis2.databinding.utils.MultirefHelperTest
[INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.01 s - in org.apache.axis2.databinding.utils.MultirefHelperTest
[INFO] Running org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderTest
[INFO] Tests run: 22, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderTest
[INFO]
[INFO] Results:
[INFO]
[ERROR] Failures:
[ERROR]   ConverterUtilTest.testConvertToDateTime:165->internalTestConvertToDateTime:385 expected:<2007-02-15T1[4]:54:29> but was:<2007-02-15T1[3]:54:29>
[INFO]
[ERROR] Tests run: 56, Failures: 1, Errors: 0, Skipped: 0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:19 min
[INFO] Finished at: 2018-07-12T14:22:28-05:00
[INFO] Final Memory: 31M/254M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.20:test (default-test) on project axis2-adb: There are test failures.
{noformat}
{panel}




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org