We have (quite) random hangs in TreeCache. TreeCache.getGlobalTransactionFromThread calls thread2GtxMap_.get(..) which never returns. Using JDB and reading java.util.HashMap sources it seems that we have a never ending loop of entries in the maps index table. The only reason I could figure out is that HashMap, being unsynchronized, is skrewed by multiple simultaneous puts by getGlobalTransactionFromThread.
Is there any reason why unsynchronized Map is used for thread2GtxMap_ and is there some other kind of synchronization protection that is not apparent from TreeCache.java itself? And finally, if there are any other unsynchronized HashMaps in use they might cause different kinds of hard to find bugs. -- Tuomas Kantonen ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/ _______________________________________________ JBoss-Development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
