[concurrency-interest] Problem with TreeMaps in backport-util-concurrent.jar version 3.0

Maeijer, Jeroen de jeroen.de.maeijer at capgemini.com
Tue May 12 16:55:00 EDT 2009



We have been using backport-util-concurrent.jar version 3.0 in a
production situation until our customer started to have some serious
problems with it.

After long examination we tracked it back to a TreeMap which was
unsorted, while it should have been sorted. Under normal circumstances
our application behaved well, but after stressing it then it seemed like
the TreeMap choked on this.

This strange behavior was not going back to normal until starting the
application again. Reason is still unknown till this moment.


Our examination of the problem gave the following results:

1.       Upgrading to backport-util-concurrent.jar 3.1 eliminated the

2.       Implementing a unique hashCode() function into the key objects
that were put into the TreeMap with backport-util-concurrent.jar 3.0
also eliminated the problem. (TreeMaps should not depend on this
hashCode, but only on the compareTo function, so it's a bit strange)


Our question is now that is this a known bug in version 3.0 that the
TreeMap sometimes chokes on non-unique hashcodes under stressed

Where can I find a list of bug fixes, because the list at the webpage
only shows 3 bug fixes?


Version 3.1 (Jul 5, 2006)
SVN logs: [Java 1.4
port-util-concurrent-3.1/backport-util-concurrent-3.1-changelog.html> ,
Java 1.2 - 1.3
tml> , Java 5.0
tml> , Java 6.0
tml> ] 

*	New features 

	*	Version for Java 6.0 available! The 5.0 and 6.0 version
matches the performance of java.util.concurrent. 
	*	Javadoc clarifications and small improvements, following
JSR 166. 

*	Bug fixes 

	*	6523756: ThreadPoolExecutor shutdownNow vs execute race.

	*	6464365: FutureTask.{set,setException} not called by
	*	6529795: (coll)Iterator.remove() fails if next() threw

Who can give us some more information that indeed this bug we describe
has been fixed in version 3.1.





Jeroen De Maeijer / Capgemini BAS B.V. / Nieuwegein Bakenmonde
Application Designer II Qualified / Retail

jeroen.de.maeijer at capgemini.com <mailto:jeroen.de.maeijer at capgemini.com>

Tel.: +31 30 212 5077 / Fax: +31 30 212 5032 / www.nl.capgemini.com
Mob. +31 6 54768310
Together. Free your energies

Capgemini is a trading name used by the Capgemini Group of companies
includes Capgemini BAS B.V., a company registered in the Netherlands
27322974) whose registered office is at Papendorpseweg 100, Utrecht.

Please consider the environment and only print this email if absolutely 
necessary. Capgemini encourages environmental awareness.


</PRE><p style="font-family:arial;color:grey" style="font-size:13px">This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.</p><PRE>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cs.oswego.edu/pipermail/concurrency-interest/attachments/20090512/1fab1d73/attachment.html>

More information about the Concurrency-interest mailing list