-
Bug
-
Resolution: Fixed
-
P1
-
6u4p
JDK/JRE: JRE 6u4p b01
JDK options: any
OS/Platform: all
HOST: stt-33.russia, stt-21.russia, chairman.russia
FAILED: with JRE 6u4p b01 - all platforms ( solaris, linux, windows )
PASSED: with JDK 6u4 ( checked on b07 ), JDK 6u3 ( checked on b04 ) - all platforms
TESTSUITE: JCK 6a fsc alt2
TEST(s):
api/java_math/BigDecimal/index.html#Divide[BigDecimal3231]
api/java_math/BigDecimal/index.html#Divide[BigDecimal3232]
api/java_math/BigDecimal/index.html#Pow[BigDecimal3240]
api/java_math/BigDecimal/index.html#ToString[BigDecimal3101]
Desc:
All mentioned tests are failed with java.lang.ArrayIndexOutOfBoundsException
How to reproduce:
Minimal tetscase:
import java.math.*;
....
(new BigDecimal(15)).remainder(new BigDecimal(3)); // This values causes
// ArrayIndexOutOfBoundsException
failed on all platforms with :
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 15
at java.math.BigDecimal.valueOf(Unknown Source)
at java.math.BigDecimal.valueOf(Unknown Source)
at java.math.BigDecimal.multiply(Unknown Source)
at java.math.BigDecimal.divideAndRemainder(Unknown Source)
at java.math.BigDecimal.remainder(Unknown Source)
at BDToStringTest.main(BDToStringTest.java:11)
-------------------------
Also a lot of other pairs of values causes the same Exception, just compile attached BDToStringTest.java
and execute with JRE 1.6.0_04 p1 as:
TESTED_JAVA_HOME/bin/java BDToStringTest 15 3
or TESTED_JAVA_HOME/bin/java BDToStringTest 18 5
or try another pairs of params.
Also you can enter ( see details in comments ) /set/stt/jck_workspace/jdk6u4/b01-p/JCK6a/runtime/Solaris10-amd64-d64-server-Xcomp/analysis
and use run_math.sh script ( execute JCK test ).
It looks like not only BigDecimal.remainder() throws an exception.
----------------------------------------------------------------------
Sample JCK test output ( api/java_math/BigDecimal/index.html#Divide ):
( Note: this test uses random number generation )
--------------
command: com.sun.jck.lib.ExecJCKTestOtherJVMCmd LD_LIBRARY_PATH=/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/SunOS.amd64:/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/SunOS.amd64/jmx:/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/SunOS.amd64 DISPLAY=:0 HOME=/home/stt-robot /export/JDK/jre1.6.0_04/bin/java -d64 -server -Xcomp -Djava.ext.dirs=/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/extensions:/export/JDK/jre1.6.0_04/lib/ext:/export/JDK/jre1.6.0_04/jre/lib/ext -Xfuture -classpath /set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/classes:/export/JDK/jre1.6.0_04/lib/tools.jar -Djava.security.policy=/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/jck.policy javasoft.sqe.tests.api.java.math.BigDecimal.DivideTests -TestCaseID ALL
----------out1:(40/2000)----------
BigDecimal0045: Passed. OKAY
BigDecimal0047: Passed. OKAY
BigDecimal0048: Passed. OKAY
BigDecimal0049: Passed. OKAY
BigDecimal0050: Passed. OKAY
BigDecimal0051: Passed. OKAY
BigDecimal3040: Passed. OKAY
BigDecimal3041: Passed. OKAY
BigDecimal3042: Passed. OKAY
BigDecimal3043: Passed. OKAY
BigDecimal3044: Passed. OKAY
BigDecimal3045: Passed. OKAY
BigDecimal3046: Passed. OKAY
BigDecimal3047: Passed. OKAY
BigDecimal3048: Passed. OKAY
BigDecimal3049: Passed. OKAY
BigDecimal3050: Passed. OKAY
BigDecimal3051: Passed. OKAY
BigDecimal3230: Passed. OKAY [170 tests]
java.lang.ArrayIndexOutOfBoundsException: 16
at java.math.BigDecimal.valueOf(Unknown Source)
at java.math.BigDecimal.valueOf(Unknown Source)
at java.math.BigDecimal.negate(Unknown Source)
at java.math.BigDecimal.abs(Unknown Source)
at java.math.BigDecimal.divideToIntegralValue(Unknown Source)
at javasoft.sqe.tests.api.java.math.BigDecimal.DecTestLine.interpret(DecTestLine.java:392)
at javasoft.sqe.tests.api.java.math.BigDecimal.DecTestFile.run(DecTestFile.java:118)
at javasoft.sqe.tests.api.java.math.BigDecimal.DivideTests.BigDecimal3231(DivideTests.java:1175)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at javasoft.sqe.javatest.lib.MultiTest.invokeTestCase(MultiTest.java:406)
at javasoft.sqe.javatest.lib.MultiTest.run(MultiTest.java:195)
at javasoft.sqe.javatest.lib.MultiTest.run(MultiTest.java:127)
at javasoft.sqe.tests.api.java.math.BigDecimal.DivideTests.main(DivideTests.java:131)
BigDecimal3231: Failed. Test case throws exception: java.lang.ArrayIndexOutOfBoundsException: 16
java.lang.ArrayIndexOutOfBoundsException
BigDecimal3232: Failed. Test case throws exception: java.lang.ArrayIndexOutOfBoundsException
STATUS:Failed.test cases: 21; passed: 19; failed: 2; first test case failure: BigDecimal3231
This bug also can be seen in Libraries testing.
testbase: /net/cady/export/dtf/unified/knight-ws/suites/6.0_cady/libs
testcases:
java_math/BigDecimal/DivideAndRemainderTestLong compile_and_execute
java_math/BigDecimal/DivideAndRemainderTestLongMC compile_and_execute
java_math/BigDecimal/PowTestLongMC compile_and_execute
java_math/BigDecimal/divideToIntegeralValueNoMC/DivideToIntegeralValueTestLong02NoMC compile_and_execute
java_math/BigDecimal/RemainderMC/RemainderTestLongMC01 compile_and_execute
java_math/BigDecimal/RemainderMC/RemainderTestDoubleMC01 compile_and_execute
java_math/BigDecimal/remainder/RemainderNoMc/RemainderTestLongNoMC01 compile_and_execute
java_math/BigDecimal/remainder/RemainderNoMc/RemainderTestLongNoMC02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongUp02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongDown02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongCeiling02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongFloor02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongHalfUp02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongHalfDown02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongHalfEven02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongUp02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongDown02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongCeiling02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongFloor02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongHalfUp02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongHalfDown02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongHalfEven02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongUp02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongDown02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongCeiling02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongFloor02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongHalfUp02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongHalfDown02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongHalfEven02 compile_and_execute
java_math/BigDecimal/Phase2/BigDecimalMultiplyTests compile_and_execute
Failure log can be access from:
http://jsqalab.sfbay/results/cady/export/results/libs/6u4p/b01/6u4p-b01-libs-Summary.html
JDK options: any
OS/Platform: all
HOST: stt-33.russia, stt-21.russia, chairman.russia
FAILED: with JRE 6u4p b01 - all platforms ( solaris, linux, windows )
PASSED: with JDK 6u4 ( checked on b07 ), JDK 6u3 ( checked on b04 ) - all platforms
TESTSUITE: JCK 6a fsc alt2
TEST(s):
api/java_math/BigDecimal/index.html#Divide[BigDecimal3231]
api/java_math/BigDecimal/index.html#Divide[BigDecimal3232]
api/java_math/BigDecimal/index.html#Pow[BigDecimal3240]
api/java_math/BigDecimal/index.html#ToString[BigDecimal3101]
Desc:
All mentioned tests are failed with java.lang.ArrayIndexOutOfBoundsException
How to reproduce:
Minimal tetscase:
import java.math.*;
....
(new BigDecimal(15)).remainder(new BigDecimal(3)); // This values causes
// ArrayIndexOutOfBoundsException
failed on all platforms with :
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 15
at java.math.BigDecimal.valueOf(Unknown Source)
at java.math.BigDecimal.valueOf(Unknown Source)
at java.math.BigDecimal.multiply(Unknown Source)
at java.math.BigDecimal.divideAndRemainder(Unknown Source)
at java.math.BigDecimal.remainder(Unknown Source)
at BDToStringTest.main(BDToStringTest.java:11)
-------------------------
Also a lot of other pairs of values causes the same Exception, just compile attached BDToStringTest.java
and execute with JRE 1.6.0_04 p1 as:
TESTED_JAVA_HOME/bin/java BDToStringTest 15 3
or TESTED_JAVA_HOME/bin/java BDToStringTest 18 5
or try another pairs of params.
Also you can enter ( see details in comments ) /set/stt/jck_workspace/jdk6u4/b01-p/JCK6a/runtime/Solaris10-amd64-d64-server-Xcomp/analysis
and use run_math.sh script ( execute JCK test ).
It looks like not only BigDecimal.remainder() throws an exception.
----------------------------------------------------------------------
Sample JCK test output ( api/java_math/BigDecimal/index.html#Divide ):
( Note: this test uses random number generation )
--------------
command: com.sun.jck.lib.ExecJCKTestOtherJVMCmd LD_LIBRARY_PATH=/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/SunOS.amd64:/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/SunOS.amd64/jmx:/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/SunOS.amd64 DISPLAY=:0 HOME=/home/stt-robot /export/JDK/jre1.6.0_04/bin/java -d64 -server -Xcomp -Djava.ext.dirs=/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/extensions:/export/JDK/jre1.6.0_04/lib/ext:/export/JDK/jre1.6.0_04/jre/lib/ext -Xfuture -classpath /set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/classes:/export/JDK/jre1.6.0_04/lib/tools.jar -Djava.security.policy=/set/stt/jck_promotions/6a/fcs/alt2/binaries/JCK-runtime-6a/lib/jck.policy javasoft.sqe.tests.api.java.math.BigDecimal.DivideTests -TestCaseID ALL
----------out1:(40/2000)----------
BigDecimal0045: Passed. OKAY
BigDecimal0047: Passed. OKAY
BigDecimal0048: Passed. OKAY
BigDecimal0049: Passed. OKAY
BigDecimal0050: Passed. OKAY
BigDecimal0051: Passed. OKAY
BigDecimal3040: Passed. OKAY
BigDecimal3041: Passed. OKAY
BigDecimal3042: Passed. OKAY
BigDecimal3043: Passed. OKAY
BigDecimal3044: Passed. OKAY
BigDecimal3045: Passed. OKAY
BigDecimal3046: Passed. OKAY
BigDecimal3047: Passed. OKAY
BigDecimal3048: Passed. OKAY
BigDecimal3049: Passed. OKAY
BigDecimal3050: Passed. OKAY
BigDecimal3051: Passed. OKAY
BigDecimal3230: Passed. OKAY [170 tests]
java.lang.ArrayIndexOutOfBoundsException: 16
at java.math.BigDecimal.valueOf(Unknown Source)
at java.math.BigDecimal.valueOf(Unknown Source)
at java.math.BigDecimal.negate(Unknown Source)
at java.math.BigDecimal.abs(Unknown Source)
at java.math.BigDecimal.divideToIntegralValue(Unknown Source)
at javasoft.sqe.tests.api.java.math.BigDecimal.DecTestLine.interpret(DecTestLine.java:392)
at javasoft.sqe.tests.api.java.math.BigDecimal.DecTestFile.run(DecTestFile.java:118)
at javasoft.sqe.tests.api.java.math.BigDecimal.DivideTests.BigDecimal3231(DivideTests.java:1175)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at javasoft.sqe.javatest.lib.MultiTest.invokeTestCase(MultiTest.java:406)
at javasoft.sqe.javatest.lib.MultiTest.run(MultiTest.java:195)
at javasoft.sqe.javatest.lib.MultiTest.run(MultiTest.java:127)
at javasoft.sqe.tests.api.java.math.BigDecimal.DivideTests.main(DivideTests.java:131)
BigDecimal3231: Failed. Test case throws exception: java.lang.ArrayIndexOutOfBoundsException: 16
java.lang.ArrayIndexOutOfBoundsException
BigDecimal3232: Failed. Test case throws exception: java.lang.ArrayIndexOutOfBoundsException
STATUS:Failed.test cases: 21; passed: 19; failed: 2; first test case failure: BigDecimal3231
This bug also can be seen in Libraries testing.
testbase: /net/cady/export/dtf/unified/knight-ws/suites/6.0_cady/libs
testcases:
java_math/BigDecimal/DivideAndRemainderTestLong compile_and_execute
java_math/BigDecimal/DivideAndRemainderTestLongMC compile_and_execute
java_math/BigDecimal/PowTestLongMC compile_and_execute
java_math/BigDecimal/divideToIntegeralValueNoMC/DivideToIntegeralValueTestLong02NoMC compile_and_execute
java_math/BigDecimal/RemainderMC/RemainderTestLongMC01 compile_and_execute
java_math/BigDecimal/RemainderMC/RemainderTestDoubleMC01 compile_and_execute
java_math/BigDecimal/remainder/RemainderNoMc/RemainderTestLongNoMC01 compile_and_execute
java_math/BigDecimal/remainder/RemainderNoMc/RemainderTestLongNoMC02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongUp02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongDown02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongCeiling02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongFloor02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongHalfUp02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongHalfDown02 compile_and_execute
java_math/BigDecimal/add/addLong/AddTestLongHalfEven02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongUp02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongDown02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongCeiling02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongFloor02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongHalfUp02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongHalfDown02 compile_and_execute
java_math/BigDecimal/multiply/multiplyLong/MultiplyTestLongHalfEven02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongUp02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongDown02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongCeiling02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongFloor02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongHalfUp02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongHalfDown02 compile_and_execute
java_math/BigDecimal/subtract/subtractLong/SubtractTestLongHalfEven02 compile_and_execute
java_math/BigDecimal/Phase2/BigDecimalMultiplyTests compile_and_execute
Failure log can be access from:
http://jsqalab.sfbay/results/cady/export/results/libs/6u4p/b01/6u4p-b01-libs-Summary.html
- relates to
-
JDK-6636394 4 BigDecimal test cases in java/util/Formatter/Basic.java test fail
-
- Resolved
-