Skip to content

Commit

Permalink
8347817: Timeouts running test/jdk/java/lang/String/concat/HiddenClas…
Browse files Browse the repository at this point in the history
…sUnloading.java with fastdebug builds

Reviewed-by: mdoerr
Backport-of: 15d6469
  • Loading branch information
reinrich committed Jan 23, 2025
1 parent 99e21c6 commit 53aa9f2
Showing 1 changed file with 13 additions and 3 deletions.
16 changes: 13 additions & 3 deletions test/jdk/java/lang/String/concat/HiddenClassUnloading.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,20 @@
import java.lang.invoke.*;
import java.lang.management.ManagementFactory;

import jdk.test.whitebox.WhiteBox;

/**
* @test
* @summary Test whether the hidden class unloading of StringConcatFactory works
*
* @library /test/lib
* @build jdk.test.whitebox.WhiteBox
* @run driver jdk.test.lib.helpers.ClassFileInstaller jdk.test.whitebox.WhiteBox
* @requires vm.flagless
* @run main/othervm -Xmx8M -Xms8M -Xverify:all HiddenClassUnloading
* @run main/othervm -Xmx8M -Xms8M -Xverify:all -XX:-CompactStrings HiddenClassUnloading
* @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xbootclasspath/a:.
* -Xverify:all HiddenClassUnloading
* @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xbootclasspath/a:.
* -Xverify:all -XX:-CompactStrings HiddenClassUnloading
*/
public class HiddenClassUnloading {
public static void main(String[] args) throws Throwable {
Expand All @@ -43,7 +50,7 @@ public static void main(String[] args) throws Throwable {

long initUnloadedClassCount = ManagementFactory.getClassLoadingMXBean().getUnloadedClassCount();

for (int i = 0; i < 12000; i++) {
for (int i = 0; i < 2000; i++) {
int radix = types.length;
String str = Integer.toString(i, radix);
int length = str.length();
Expand All @@ -61,6 +68,9 @@ public static void main(String[] args) throws Throwable {
);
}

// Request GC which performs class unloading
WhiteBox.getWhiteBox().fullGC();

long unloadedClassCount = ManagementFactory.getClassLoadingMXBean().getUnloadedClassCount();
if (initUnloadedClassCount == unloadedClassCount) {
throw new RuntimeException("unloadedClassCount is zero");
Expand Down

0 comments on commit 53aa9f2

Please sign in to comment.