-
Bug
-
Resolution: Unresolved
-
Low
-
None
-
6.10.3
-
1
-
Severity 2 - Major
-
0
-
Issue Summary
When an app vendor did some load tests on their end, they encounter lots of ConcurrentModificationException exceptions
Environment
Total Spaces 5019
Site Spaces 5019
Personal Spaces 0
Content (All Versions) 4068499
Content (Current Versions) 3966151
Local Users 10524
Local Groups 1008
Java VM Memory Statistics
Heap Memory
Used Memory (61 %) Free Memory (39 %)
39 % Free
Maximum Heap Size 12288 MB
Total Allocated Memory 12288 MB
Used Memory 7517 MB
Free Allocated Memory 4770 MB
Total Free Memory 4770 MB
Expected Results
No or less hazelcast exceptions
Actual Results
Lots of hazelcast exxceptions
The below exception is thrown in the log file:
atlassian-confluence.log.zip
Notes
The root cause is these two methods:
com.atlassian.confluence.extra.userlister.DefaultUserListManager#registerLoggedInUser
com.atlassian.confluence.extra.userlister.DefaultUserListManager#unregisterLoggedInUser
When the system is under the stress test, these two methods are called frequently and concurrently. Both of them call com.atlassian.confluence.extra.userlister.DefaultUserListManager#cacheLoggedInUser, which retrieves the HashMap of user's sessions from the cache and modifies it. Once there are more than one threads that attempt to modify the HashMap, while Hazelcast is iterating over it (in order to serialise the HashMap), then we have the java.util.ConcurrentModificationException.
Workaround
Currently there is no known workaround for this behavior. A workaround will be added here when available
- relates to
-
DEVHELP-2762 Failed to load
Form Name |
---|