JDK-7092825 : javax.crypto.Cipher.Transform.patternCache is synchronizedMap and became scalability bottleneck.
  • Type: Enhancement
  • Component: security-libs
  • Sub-Component: java.security
  • Affected Version: 7
  • Priority: P4
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2011-09-20
  • Updated: 2013-04-22
  • Resolved: 2012-02-07
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7 JDK 8
7u4Fixed 8 b25Fixed
Description
javax.crypto.Cipher.Transform.patternCache is synchronizedMap and became scalability bottleneck when Cipher.getInstance() is frequently called.
Should be replaced to ConcurrentHashMap as suggect in the comment to that field.
The problem is important for SPECjvm2008:crypto.rsa and for SPECjvm2011.
Fix is suggested.

Comments
EVALUATION Suggested fixes looks reasonable. Will adopt the changes.
11-01-2012

SUGGESTED FIX attached webrev.zip contains suggested fix.
20-09-2011