RFR: 8370975: OutputAnalyzer.matches() should use Matcher with Pattern.MULTILINE [v2]

Ioi Lam iklam at openjdk.org
Tue Nov 4 09:01:36 UTC 2025


> In the previous fix (https://github.com/openjdk/jdk/pull/28035), I added `OutputAnalyzer::match(String regexp)`, but it didn't work because by default regular expressions do not match across newlines.
> 
> I fixed this by re-working `OutputAnalyzer::match()`, etc, to use `Pattern.MULTILINE`.
> 
> I tried rerunning the test on macos 26 but couldn't reproduce the condition in the bug report. However, I added sanity test in this version (https://github.com/openjdk/jdk/commit/e690e97262575d083017635fa837ab267686bfe9) and the new regexp seems to catch the output and correctly come to this part of the test case:
> 
> 
> if (forceBase >= end) {
>     throw new SkippedException("Failed to force ccs to any of the given bases. Skipping test.");
> }

Ioi Lam has updated the pull request incrementally with one additional commit since the last revision:

  Refactored the various "match" methods in OutputAnalyzer; added tests; reverted changes in AccessZeroNKlassHitsProtectionZone.java

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/28077/files
  - new: https://git.openjdk.org/jdk/pull/28077/files/184bb30c..3b493855

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=28077&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=28077&range=00-01

  Stats: 94 lines in 3 files changed: 72 ins; 13 del; 9 mod
  Patch: https://git.openjdk.org/jdk/pull/28077.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28077/head:pull/28077

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


More information about the hotspot-runtime-dev mailing list