RFR: 8062771: Core reflection should use final fields whenever possible
Martin Buchholz
martinrb at google.com
Thu Nov 27 19:21:18 UTC 2014
Approved! Making fields final is super-safe.
On Wed, Nov 26, 2014 at 10:59 PM, Ivan Gerasimov
<ivan.gerasimov at oracle.com> wrote:
> Hi!
>
> I can take care of jdk8 backport too, if you want.
> I've checked it, and the port seemed quite straight-forward (modulo
> unshuffling).
>
> Only changes to a few files [1] had to be skipped, as the changes appear to
> already be there in jdk8u.
>
> Here's the webrev of jdk8u backport for JDK-8062771:
>
> WEBREV: http://cr.openjdk.java.net/~igerasim/8062771/0/webrev/
>
>
> [1] And here's the list of the files that needed to be excluded from the
> changeset:
> src/share/classes/sun/reflect/generics/factory/CoreReflectionFactory.java
> src/share/classes/sun/reflect/generics/reflectiveObjects/LazyReflectiveObjectGenerator.java
> src/share/classes/sun/reflect/generics/repository/AbstractRepository.java
> src/share/classes/sun/reflect/generics/scope/AbstractScope.java
> src/share/classes/sun/reflect/generics/tree/ClassSignature.java
>
> Sincerely yours,
> Ivan
>
>
>
> On 10.11.2014 12:00, Joel Borggrén-Franck wrote:
>>
>> That would be great
>>
>> cheers
>> /Joel
>>
>> On 2014-11-09, Ivan Gerasimov wrote:
>>>
>>> Hi!
>>>
>>> I think I can handle the backport to jdk7, if you still need a volunteer.
>>>
>>> Sincerely yours,
>>> Ivan
>>>
>>> On 08.11.2014 1:48, Martin Buchholz wrote:
>>>>
>>>> Hi Joel,
>>>>
>>>> Thanks for volunteering. I foisted all I have in
>>>>
>>>> https://bugs.openjdk.java.net/browse/JDK-8064391
>>>>
>>>> I volunteer to be your reviewer for the backports.
>>>>
>>>> On Fri, Nov 7, 2014 at 1:36 PM, Joel Borggrén-Franck
>>>> <joel.franck at oracle.com> wrote:
>>>>>
>>>>> Hi Martin,
>>>>>
>>>>> Thanks for the clarification.
>>>>>
>>>>> On 6 nov 2014, at 20:51, Martin Buchholz <martinrb at google.com> wrote:
>>>>>
>>>>>> Hi Joel,
>>>>>>
>>>>>> On Thu, Nov 6, 2014 at 2:48 AM, Joel Borggrén-Franck
>>>>>> <joel.franck at oracle.com> wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I’m having a hard time following this thread, which webrev has been
>>>>>>> updated, for which release, fixing which issue?
>>>>>>
>>>>>> I am submitting the changeset for JDK-8062771, adding the finals and
>>>>>> the (failed reproduction) test.
>>>>>> Hopefully there will be followon changes to add even more thread
>>>>>> safety.
>>>>>>
>>>>> Great.
>>>>>
>>>>> Are we sure the accidental fix of making ClassRepository volatile is
>>>>> good on all platforms? I can’t establish the happens before relations that
>>>>> would prove the fix but then again I’m not an expert on concurrency.
>>>>>
>>>>>>> Martin, as far as I can see you are the only one of us who has
>>>>>>> replied to this thread who is a jdk7u committer (or reviewer).
>>>>>>
>>>>>> I am entirely in favor of having more reviewers.
>>>>>>
>>>>>> We are not planning to push these into jdk7u or jdk8u ourselves, but
>>>>>> we are willing to help anyone who wants to take on that task. Joel,
>>>>>> are you volunteering?
>>>>>> We believe all versions of stock openjdk still have (rarely seen)
>>>>>> thread safety issues in core reflection. We have applied changes
>>>>>> locally at Google to fix those.
>>>>>>
>>>>> I’ll take care of 8u, and I can hunt down someone to fix this in 7u if
>>>>> we can find a suitable reviewer (sigh).
>>>>>
>>>>> cheers
>>>>> /Joel
>>>>>
>>>>>
>>
>
More information about the core-libs-dev
mailing list