On Wed, 1 May 2024 16:10:06 GMT, Justin Lu <j...@openjdk.org> wrote:

> Please review this PR which converts _TestEncodingDecodingLength.java_ into a 
> whitebox test which allows for testing to be done without memory usage issues.
> 
> Currently, the test requires about ~2.75 `Integer.MAX_VALUE` sized byte 
> arrays worth of memory. (2 for the initial array allocation, .75 for the 
> target array in `decode()`). While the `-Xms6g -Xmx8g` options should address 
> this, there have been intermittent memory issues, as the underlying machine 
> machine may be running other tests simultaneously.
> 
> By converting this test to a white-box test not only does it get rid of 
> memory issues, but it also gets rid of the need to decode 2GB of data 3 
> times. The change is done using reflection to test the private visibility 
> methods `encodedOutLength` and `decodedOutLength`, which the public `encode` 
> and `decode` overloaded methods call respectively.

This pull request has now been integrated.

Changeset: b33096f8
Author:    Justin Lu <j...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/b33096f887108c3d7e1f4e62689c2b10401234fa
Stats:     81 lines in 1 file changed: 44 ins; 4 del; 33 mod

8295153: java/util/Base64/TestEncodingDecodingLength.java ran out of memory

Reviewed-by: lancea, naoto

-------------

PR: https://git.openjdk.org/jdk/pull/19036

Reply via email to