[RFR] [8u] 8078334: Mark regression tests using randomness
Martin Balao
mbalao at redhat.com
Fri Aug 21 16:38:47 UTC 2020
Hi Andrew,
Thanks for proposing this backport.
On Thu, Aug 20, 2020 at 3:22 PM Andrew Hughes <gnu.andrew at redhat.com> wrote:
>
> Webrev: https://cr.openjdk.java.net/~andrew/openjdk8/8078334/webrev.01/
> Bug: https://bugs.openjdk.java.net/browse/JDK-8078334
>
> This is a long but simple patch, which tags a number of test cases. It
> removes unnecessary differences between the copies of these test cases
> in 8u and in later versions, simplifying future backports (in
> particular, those for PKCS#11).
>
> Most of the differences between this patch and the 9u version are due
> to differing context and a few missing test cases:
>
> * The TEST.ROOT change is already present in 8u, thanks to
> JDK-8151731: "Add new jtreg keywords to jdk 8"
>
Right.
> * The test/com/oracle/security ucrypto tests are not present in 8u, as
> UCrypto wasn't added to OpenJDK until JDK-8046002: "Move Ucrypto to
> the open jdk repo". It's a Solaris feature so I see little need to
> backport it.
>
Right.
> * test/com/sun/crypto/provider/Cipher/RSA/TestOAEP.java has an
> additional bug ID in 8u, changing the context.
>
Right.
> * test/java/io/InputStream/TransferTo.java is not present in 8u, as
> the transferTo method is not in 8u (introduced by JDK-8066867: Add
> InputStream transferTo to transfer content to an OutputStream)
>
Right.
> * test/java/lang/ClassLoader/Assert.java, test/java/lang/Math/HypotTests.java,
> test/java/lang/Math/IeeeRecommendedTests.java, test/java/lang/Math/Log1pTests.java
> have slight context differences in 8u.
>
Yes. None of them fundamental to 8078334.
> * test/java/lang/invoke/MethodHandles/CatchExceptionTest.java does not
> have the "intermittent" keyword in 8u. It seems JDK-8055269:
> "java/lang/invoke/MethodHandles/CatchExceptionTest.java fails
> intermittently" will have fixed this.
Yes.
>
> * test/java/math/BigDecimal/StringConstructor.java,
> test/java/math/BigInteger/BigIntegerTest.java,
> test/java/math/BigInteger/ModPow65537.java,
> test/java/math/BigInteger/PrimeTest.java,
> test/java/math/BigInteger/SymmetricRangeTests.java,
> test/java/util/Arrays/Correct.java,
> test/java/util/Base64/TestBase64.java,
> test/java/util/BitSet/BSMethods.java have slight
> context differences in 8u (fewer bug IDs)
>
Yes. None of them fundamental to 8078334.
> * test/java/util/logging/FileHandlerLongLimit.java was introduced by
> JDK-8059767: "FileHandler should allow 'long' limits and handle
> overflow of MeteredStream.written.", which is an enhancement out of
> scope for backport.
>
Right.
> * test/java/util/logging/FileHandlerPatternExceptions.java was
> introduced by JDK-8025690: "Default FileHandler constructor doesn't
> throw NullPointerException if pattern is empty and count > 1" which
> changes the behaviour of a public constructor and so too risky for
> backport.
>
Agree.
> * test/java/util/logging/LogManager/Configuration/ParentLoggerWithHandlerGC.java
> was introduced by JDK-8060132: "Handlers configured on abstract
> nodes in logging.properties are not always properly closed", which
> changes behaviour in a way worthy of a release note, so not suitable
> for backport.
>
> * test/java/util/logging/LoggingDeadlock.java has slight context differences.
>
> * test/java/util/zip/DeInflate.java already gained the tag in
> JDK-8184682: "Upgrade compression library"
>
Right.
> * test/java/util/zip/InflateIn_DeflateOut.java,
> test/sun/nio/cs/TestStringCoding.java,
> test/java/util/zip/ZipFile/ReadZip.java have additional bug IDs in
> 8u.
Ok.
>
> * test/java/util/zip/ZipFile/Assortment.java,
> test/java/util/zip/ZipFile/MultiThreadedReadTest.java,
> test/javax/crypto/KeyGenerator/TestKGParity.java,
> test/sun/management/jmxremote/startstop/JMXStartStopTest.java,
> test/sun/misc/FloatingDecimal/TestFloatingDecimal.java,
> test/sun/security/provider/DSA/TestDSA2.java,
> test/sun/security/rsa/TestKeyPairGenerator.java and
> test/sun/security/rsa/TestSignatures.java have slight context
> differences.
>
Ok.
> * test/sun/security/mscapi/PrngSlow.java has an additional @requires
> in 8u.
>
Ok.
> * test/javax/net/ssl/SSLEngine/LargeBufs.java,
> test/sun/security/ssl/GenSSLConfigs/main.java and
> test/sun/security/ssl/ClientHandshaker/LengthCheckTest.java can be
> found in
> test/sun/security/ssl/javax/net/ssl/NewAPIs/SSLEngine/LargeBufs.java,
> test/sun/security/ssl/com/sun/net/ssl/internal/ssl/GenSSLConfigs/main.java
> and
> test/sun/security/ssl/com/sun/net/ssl/internal/ssl/ClientHandshaker/LengthCheckTest.java
> in 8u, respectively. Backporting JDK-8032473: "Restructure JSSE
> regression test hierarchy in jdk test" seems pointless, given the
> imminent import of TLS 1.3.
I agree with not relocating the tests because of this backport. Even
though your decision looks good in the context of this backport, this
will bring conflicts with the TLS 1.3 work we are doing. The TLS 1.3
work includes an 8u backport of 8032473.
>
> Ok for 8u?
>
May I ask you to undo the changes for LargeBufs.java,
LengthCheckTest.java and GenSSLConfigs/main.java? Even though they are
correct for this backport, they will bring future conflicts when
merging the TLS 1.3 work. My promise is that the TLS 1.3 backport (at
Step 11) includes the 'randomness' key for all these files. I've just
verified it.
Thanks,
Martin.-
More information about the jdk8u-dev
mailing list