[8u] RFR 8214687: Optimize Collections.nCopies().hashCode() and equals()

Aleksey Shipilev shade at redhat.com
Wed Aug 7 15:17:55 UTC 2019


On 7/31/19 6:08 PM, Aleksey Shipilev wrote:
> On 7/31/19 5:56 PM, Andrew John Hughes wrote:
>> On 31/07/2019 10:02, Aleksey Shipilev wrote:
>>> On 7/16/19 9:25 AM, Andrew John Hughes wrote:
>>>> On 15/07/2019 09:27, Aleksey Shipilev wrote:
>>> Getting back to this. Since we have moved Preconditions to private location in 8u, using it is
>>> impossible for this patch. So, I would keep the webrev as is:
>>>   https://cr.openjdk.java.net/~shade/8214687/webrev.8u.01
>>
>> We haven't moved anything as yet and my proposed patch leaves the class
>> as public, so shouldn't be a blocker. The test in that patch uses
>> Preconditions.
> 
> Original patch needs Objects.checkIndex:
>   https://hg.openjdk.java.net/jdk/jdk/rev/cfceb4df2499#l2.32
> 
> What you are suggesting is changing that line to Preconditions (with new method!). What webrev
> suggests is replacing it with the one-liner:
> 
>   91  check(0 <= index && index < n, "Index is incorrect");
> 
> Given that we are changing the code anyway, I don't see why do we need to introduce another
> dependency to the about-to-be-moved class, do more code that diverges 8u from later releases,
> instead of doing the trivial one-liner.

Thoughts?

-- 
Thanks,
-Aleksey



More information about the jdk8u-dev mailing list