On Thu, 25 Jun 2026 06:35:42 GMT, Jaikiran Pai <[email protected]> wrote:
>> Can I please get a review of this change which proposes to improve the >> exception message in `IllegalMonitorStateException` when it gets thrown for >> value objects? >> >> With this change, we now report the following exception message when value >> objects are used to invoke `Object.wait()` and related methods: >> >> >> jshell> o.wait() >> | Exception java.lang.IllegalMonitorStateException: current thread is not >> owner >> | at Object.wait0 (Native Method) >> | at Object.wait (Object.java:433) >> | at Object.wait (Object.java:387) >> | at (#2:1) >> >> There were some thoughts about using an exception message of the form >> `Exception java.lang.IllegalMonitorStateException: object's type >> java.lang.Integer is not an identity class`. But since value objects cannot >> be synchronized upon, we decided it would be fine (and accurate) to reuse >> the same "current thread is not owner" exception message that we use for >> identity objects. >> >> Given the nature of this change, I haven't added any new jtreg tests for >> this. Existing tests in tier1, tier2 and tier3 continue to pass after this >> change. >> >> >> --------- >> - [x] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > Jaikiran Pai has updated the pull request with a new target base due to a > merge or a rebase. The incremental webrev excludes the unrelated changes > brought in by the merge/rebase. The pull request contains four additional > commits since the last revision: > > - merge latest from lworld branch > - merge latest from lworld branch > - no need for ResourceMark > - 8386963: [lworld] Improve the exception message from Object > synchronization methods on value objects This seems fine to me. The ResourceMarks are no longer needed. ------------- Marked as reviewed by dholmes (Committer). PR Review: https://git.openjdk.org/valhalla/pull/2568#pullrequestreview-4568523961
