RFR JDK-7092821 "java.security.Provider.getService() is synchronized and became scalability bottleneck"
Weijun Wang
weijun.wang at oracle.com
Thu Dec 6 03:28:00 UTC 2018
Hi Valerie
- map.put("CertPathBuilder.PKIX ValidationAlgorithm",
- "RFC5280");
- map.put("CertPathValidator.PKIX ValidationAlgorithm",
- "RFC5280");
+ attrs.put("PKIX ValidationAlgorithm", "RFC5280"); <<<<<<<<<< !!!!
+ add(p, "CertPathBuilder", "PKIX",
+ "sun.security.provider.certpath.SunCertPathBuilder",
+ null, attrs);
+ add(p, "CertPathValidator", "PKIX",
+ "sun.security.provider.certpath.PKIXCertPathValidator",
+ null, attrs);
Here, "PKIX" is the algorithm name and not a part of the attribute name.
Other new aliases and attributes look good.
Thanks
Max
> On Nov 22, 2018, at 2:05 AM, Valerie Peng <valerie.peng at oracle.com> wrote:
>
> Hi,
>
> Can someone help reviewing this fix?
>
> Besides changing the Provider class to use ConcurrentHashMap in order to reduce the lock contention on Provider.getService() calls, I also changed the security providers in java.base module to register through putService(...) calls. Performance is manually verified and mach5 run is clean.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-7092821
> Webrev: http://cr.openjdk.java.net/~valeriep/7092821/webrev.00/
>
> Thanks,
> Valerie
>
>
>
>
>
More information about the security-dev
mailing list