RFR: 8361497: Scoped Values: orElse and orElseThrow do not access the cache

Alan Bateman alanb at openjdk.org
Thu Jul 10 16:00:40 UTC 2025


On Mon, 7 Jul 2025 16:13:08 GMT, Andrew Haley <aph at openjdk.org> wrote:

> Neither `ScopedValue.orElse` nor `ScopedValue.orElseThrow` consult the cache when searching for a binding. Neither do they update the cache when a binding is found.
> While this issue does not affect spec compliance, it is surprising to users that `x.orElse(other)` should be slower than `x.isBound ? x.get() : other`.

Marked as reviewed by alanb (Reviewer).

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

PR Review: https://git.openjdk.org/jdk/pull/26164#pullrequestreview-3006369629


More information about the core-libs-dev mailing list