commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bruno P. Kinoshita (JIRA)" <j...@apache.org>
Subject [jira] [Created] (LANG-1337) Fix test failures in IBM JDK 8
Date Tue, 06 Jun 2017 11:38:18 GMT
Bruno P. Kinoshita created LANG-1337:
----------------------------------------

             Summary: Fix test failures in IBM JDK 8
                 Key: LANG-1337
                 URL: https://issues.apache.org/jira/browse/LANG-1337
             Project: Commons Lang
          Issue Type: Bug
          Components: lang.*
    Affects Versions: 3.5
         Environment: java version "1.8.0"
Java(TM) SE Runtime Environment (build pxa6480sr4fp6-20170518_02(SR4 FP6))
IBM J9 VM (build 2.8, JRE 1.8.0 Linux amd64-64 Compressed References 20170516_348050 (JIT
enabled, AOT enabled)
J9VM - R28_20170516_1905_B348050
JIT  - tr.r14.java_20170516_348050
GC   - R28_20170516_1905_B348050_CMPRSS
J9CL - 20170516_348050)
JCL - 20170516_01 based on Oracle jdk8u131-b11

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T05:41:47+13:00)
Maven home: /opt/maven
Java version: 1.8.0, vendor: IBM Corporation
Java home: /home/kinow/Development/java/ibm-java-x86_64-80/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-78-generic", arch: "amd64", family: "unix"

git sha 551101299da7f75ea5478db1a6bc194963e0ac34
            Reporter: Bruno P. Kinoshita
            Assignee: Bruno P. Kinoshita
            Priority: Minor
             Fix For: 3.6


>From the 3.6 thread RC2. We had issues in the release. Two tests failed. One of these
tests happened on IBM JDK 8, and was related to time zones. Gary Gregory quickly pointed that
the very latest IBM JDK 8 released did not had this issue.

Indeed, I grabbed a JDK 8 from IBM and had this issue, and then after looking for the latest
version, I had only one test failing. This test in question was ToStringBuilderTest#testReflectionHierarchyArrayList.

Debugging the test in Eclipse, with the JDK pointing to IBM JDK 8 (and taking care to not
let the Eclipse maven integration change it), there is a part of the code that receives an
ArrayList object to create a String with reflection.

In Oracle JDK 7, the object contains the default 10 empty positions, and thus the generated
String is.

{noformat}
java.util.ArrayList@761a4a3d[elementData={<null>,<null>,<null>,<null>,<null>,<null>,<null>,<null>,<null>,<null>},size=0,modCount=0]
{noformat}

But with IBM JDK 8, the ArrayList is empty, nada, and then I get the following in the Eclipse
debugger.

{noformat}
java.util.ArrayList@761a4a3d[elementData={},size=0,modCount=0]
{noformat}

The test is - as commented in LANG-727 - a bit flaky. However, the expected string assumes
ArrayList will have an initial 10 null values. So the pull request in this issue simply creates
an ArrayList with 10 initial capacity :-) a naïve approach, but that I believe fixes this
test.

The changes in the pull request linked to this issue have all tests passing with the following
set-ups:

{noformat}
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T05:41:47+13:00)
Maven home: /opt/maven
Java version: 1.7.0_80, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-78-generic", arch: "amd64", family: "unix"
---
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T05:41:47+13:00)
Maven home: /opt/maven
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-78-generic", arch: "amd64", family: "unix"
---
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T05:41:47+13:00)
Maven home: /opt/maven
Java version: 1.8.0, vendor: IBM Corporation
Java home: /home/kinow/Development/java/ibm-java-x86_64-80/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-78-generic", arch: "amd64", family: "unix"
---
java version "1.8.0"
Java(TM) SE Runtime Environment (build pxa6480sr4fp6-20170518_02(SR4 FP6))
IBM J9 VM (build 2.8, JRE 1.8.0 Linux amd64-64 Compressed References 20170516_348050 (JIT
enabled, AOT enabled)
J9VM - R28_20170516_1905_B348050
JIT  - tr.r14.java_20170516_348050
GC   - R28_20170516_1905_B348050_CMPRSS
J9CL - 20170516_348050)
JCL - 20170516_01 based on Oracle jdk8u131-b11
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message