Details
-
Bug
-
Resolution: Obsolete
-
Medium
-
None
-
2.0.5
-
None
-
Studio with Google Apps integration
-
Severity 1 - Critical
-
Description
Original issue title: Concurrent Modification Exception when iterating the list of username returned by UserManager in the client
There is a user poller in Studio's Google Apps integration that creates new users when new users have been found from Google.
If another class is iterating the list of usernames returned by Crowd's UserManager at the same time, a ConcurrentModificationException is thrown.
Log and stacktrace is listed below. The first line shows a new user is being added in the SyncServiceThread-Thread-21 thread, which broke the iteration in the http-2990-4 thread.
2010-08-31 20:36:56,790 SyncServiceThread-Thread-21 INFO testadmin 1236x12x1 wu60v5 /secure/admin/XmlRestore.jspa jira.poller.impl.SyncJobImpl Creating new user: ' ('"&;: '"&:
2010-08-31 20:36:56,861 http-2990-4 ERROR testadmin 1236x12x1 wu60v5 /secure/admin/XmlRestore.jspa sal.core.upgrade.PluginUpgrader Upgrade failed: null
java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
at java.util.AbstractList$Itr.next(AbstractList.java:343)
at com.atlassian.agmp.openid.users.mgmt.jira.upgrade.UT001SetOpenIdDomainAttributeForExistingGoogleUsers.doUpgrade(UT001SetOpenIdDomainAttributeForExistingGoogleUsers.java:61)
Attachments
Issue Links
- is related to
-
CWD-1321 Don't start to populate Crowd's cache again if the data load has already started.
- Closed
-
CWD-1455 Crowd Client making multiple requests to SecurityServer.findAllGroupRelationships() cause Crowd's http queue to overflow
- Closed
- relates to
-
CWD-2181 CachingUserManager's implementation of checking whether a user exists or not given the username is not thread-safe and could return false if the cache is flushed in the meanwhile
- Closed