[PATCH FOR REVIEW] 7036559: ConcurrentHashMap footprint and contention improvements

Andrew Hughes gnu.andrew at redhat.com
Tue Jun 4 10:07:54 PDT 2013


----- Original Message -----
> ----- Original Message -----
> > On 05/31/2013 05:38 PM, Andrew Hughes wrote:
> > > This fix was determined to be a prerequisite backport for the 2013-04
> > > security fixes.
> > > 
> > > http://cr.openjdk.java.net/~andrew/jdk6/7036559/
> > 
> > I did a diff between the result of this patch and the file in jdk7u
> > after revision 005c0c85b0de and it looks identical, except for minor
> > changes:
> > 
> > > ---
> > > jdk7u/jdk/src/share/classes/java/util/concurrent/ConcurrentHashMap.java
> > > 	2013-05-31 18:32:28.179433269 -0400
> > > +++ temp/ConcurrentHashMap.java	2013-05-31 17:34:06.000000000 -0400
> > > @@ -30,7 +30,7 @@
> > >   *
> > >   * Written by Doug Lea with assistance from members of JCP JSR-166
> > >   * Expert Group and released to the public domain, as explained at
> > > - * http://creativecommons.org/publicdomain/zero/1.0/
> > > + * http://creativecommons.org/licenses/publicdomain
> > >   */
> > >  
> > >  package java.util.concurrent;
> > > @@ -1412,7 +1412,7 @@
> > >       * for each key-value mapping, followed by a null pair.
> > >       * The key-value mappings are emitted in no particular order.
> > >       */
> > > -    private void writeObject(java.io.ObjectOutputStream s) throws
> > > IOException {
> > > +    private void writeObject(java.io.ObjectOutputStream s) throws
> > > IOException  {
> > >          // force all segments for serialization compatibility
> > >          for (int k = 0; k < segments.length; ++k)
> > >              ensureSegment(k);
> > > @@ -1446,7 +1446,7 @@
> > >       */
> > >      @SuppressWarnings("unchecked")
> > >      private void readObject(java.io.ObjectInputStream s)
> > > -        throws IOException, ClassNotFoundException {
> > > +        throws IOException, ClassNotFoundException  {
> > >          s.defaultReadObject();
> > >  
> > >          // Re-initialize segments to be minimally sized, and let grow.
> > 
> 
> These are:
> 
> changeset:   3984:31619dfa6a4a
> user:        dl
> date:        Thu Apr 07 15:06:32 2011 +0100
> summary:     7034657: Update Creative Commons license URL in legal notices
> 
> changeset:   3203:9e494de19690
> user:        dl
> date:        Wed Dec 01 21:46:52 2010 +0000
> summary:     7003745: Code style cleanups (sync from Dougs CVS)
> 
> > I don't see any API changes in the webrev; that's good.
> > 
> 
> Well, these changes have already been shipped in IcedTea and we've had builds
> in Fedora and RHEL pass the TCK.  This is just a matter of syncing them to
> OpenJDK 6.  We'll not be changing them in the process, as it would affect our
> existing results.
> 
> > Do you also intend to backport the following?
> > 
> > changeset:   4110:e9ec52c63a9f
> > user:        dl
> > date:        Thu Apr 21 17:00:23 2011 +0100
> > summary:     7038542: Small performance regression in ConcurrentHashMap
> > on c1 since CR 703655
> > 
> 
> Good spot.
> 
> We can consider this after a security update is released (which will probably
> be after the June one is in too now).
> 
> We can look at including it in IcedTea first to give it some testing.
> 
> > Thanks,
> > Omair
> > --
> > PGP Key: 66484681 (http://pgp.mit.edu/)
> > Fingerprint = F072 555B 0A17 3957 4E95  0056 F286 F14F 6648 4681
> > 
> 
> --
> Andrew :)
> 
> Free Java Software Engineer
> Red Hat, Inc. (http://www.redhat.com)
> 
> PGP Key: 248BDC07 (https://keys.indymedia.org/)
> Fingerprint = EC5A 1F5E C0AD 1D15 8F1F  8F91 3B96 A578 248B DC07
> 
> 

Pushed: http://hg.openjdk.java.net/jdk6/jdk6/jdk/rev/d3912e74ec28
-- 
Andrew :)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F  8F91 3B96 A578 248B DC07



More information about the jdk6-dev mailing list