users@glassfish.java.net

RE: java.util.ConcurrentModificationException with ...

From: Martin Gainty <mgainty_at_hotmail.com>
Date: Fri, 19 Apr 2013 18:40:03 -0400

Look at the stack
When Multiple Threads come down from coyote and finally access HashMap then ConcurrentHashMap happens
Notice there is no locking so if you and I both go after the SAME segment in the SAME HashMap
ConcurrentHashMapException
public List<String> getAddedAttributes() { List<String> resultList = new ArrayList<String>(); for (Map.Entry<String, SessionAttributeState> entry : _attributeStates.entrySet()) { SessionAttributeState nextAttrState = entry.getValue(); String nextAttrName = entry.getKey(); if(!nextAttrState.isPersistent() && !nextAttrState.isDirty()) { resultList.add(nextAttrName); }
         } return resultList; }

http://www.grepcode.com/file/maven.java.net/content/groups/promoted/org.glassfish.main.web/web-ha/4.0-b78/org/glassfish/web/ha/session/management/ModifiedAttributeHASession.java#ModifiedAttributeHASession.getAddedAttributes%28%29
OR you can implement a Class which extends java.util.concurrent.locks.ReentrantLock such as ConcurrentHashMaphttp://www.grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7-b147/java/util/concurrent/ConcurrentHashMap.java#ConcurrentHashMap

Martin

______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité


Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.

> To: users_at_glassfish.java.net
> Subject: Re: java.util.ConcurrentModificationException with ...
> From: forums_at_java.net
> Date: Fri, 19 Apr 2013 15:27:27 -0500
>
> We are still getting this sporadically. Any insights on this? Thanks
>
> --
>
> [Message sent by forum member 'lprimak']
>
> View Post: http://forums.java.net/node/895656
>
>