RFR: JDK-8274686 : java.util.UUID#hashCode() should use Long.hashCode()

Сергей Цыпанов github.com+10835776+stsypanov at openjdk.java.net
Tue Oct 5 12:30:11 UTC 2021


On Mon, 4 Oct 2021 21:13:02 GMT, PROgrm_JARvis <github.com+7693005+JarvisCraft at openjdk.org> wrote:

> This is trivial fix of [JDK-8274686](https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8274686) which replaces manually-computed `int`-based `long` hash-code.
> 
> Because `Long#hashCode(long)` uses other hashing function than the one currently used here:
> 
> https://github.com/openjdk/jdk/blob/75d6688df9845ecb8f370b4cd2d5a36f13d3cdc0/src/java.base/share/classes/java/lang/Long.java#L1440-L1442
> 
> the value of `hashCode()` will produce different result, however this does not seem to be a breaking change as `UUID#hashCode()` is not specified.
> 
> ---
> 
> Note: the comment to the bug states:
> 
>> Moved to JDK for further discussions of the proposed enhancement.
> 
> But as there seemed to be no corresponding discussion in core-libs-dev and the change looks trivial, I considered that it is appropriate to open a PR which (if needed) may be used for discussion (especially, considering the fact that its comments get mirrored to the ML).

Good catch, this is what I've missed in https://github.com/openjdk/jdk/pull/4309

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

PR: https://git.openjdk.java.net/jdk/pull/5811


More information about the core-libs-dev mailing list