[7u40] Request for phase 2 approval for 8021946: Disabling sun.reflect.Reflection.getCallerCaller(int) by default breaks several frameworks and libraries
Jeff Dinkins
jeff.dinkins at oracle.com
Wed Jul 31 19:43:04 PDT 2013
Approved for jdk7u40-dev.
On Jul 31, 2013, at 1:44 PM, Alan Bateman <Alan.Bateman at oracle.com> wrote:
>
> A few weeks ago we pushed a change that "disables" the JDK private method sun.reflect.Reflection.getCallerClass(int). Those that have been following the effort to check the usages of caller sensitive methods in the JDK will be familiar with the background to this.
>
> At the time it was known that at least some developers have been using this method directly and the solution allowed for those cases by providing a system property to "re-enable" the method. Since then it has become clear that there are a more usages that originally expected and disabling it by default in 7u40 is going to cause significant pain and noise.
>
> I would like to propose that we change 7u40 so that this method is not disabled by default. This should not be interpreted to mean that we support direct usages of JDK-private sun.* APIs of course. Note that I am not proposing at this time to do anything for JDK 8, instead we need to take the time to look at the use-cases in more detail to see what if there are other changes or APIs that need to be introduced.
>
> So for 7u40, I propose is to leave the system property in place and simply change its default value. This allows for testing with the method disabled to see if there are dependencies. It also means the changes (at this late time in the release) are minimal. The webrev with the changes is here:
>
> http://cr.openjdk.java.net/~alanb/8021946/webrev/
>
> This change requires a jdk7u reviewer as it is not a backport. It also requires one of the jdk7u maintainers to approve this change for the 7u40 stabilization forest.
>
> -Alan.
More information about the jdk7u-dev
mailing list