-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 11.0.0, 12.0.0, 13.0.0, 13.5.0
-
Component/s: None
-
Sprint:Sustaining Sprint 11, Sustaining Sprint 12, AM Sustaining Sprint 13, AM Sustaining Sprint 14, AM Sustaining Sprint 15, AM Sustaining Sprint 34, AM Sustaining Sprint 35, AM Sustaining Sprint 36, AM Sustaining Sprint 37
-
Story Points:5
-
Support Ticket IDs:
-
Verified Version/s:
When OpenAM creates ServiceConfigImpl as global configuration, it overwrite old value in cache.
Then, some reference are remained.
such as:
- ServiceConfigImpl.smsEntry
- ServiceConfigImpl.ssmi
So GC does not collect them.
Reproduction step 1:
1) Access the admin console
2) Click tab or link again and again
Reproduction step 2 (only OpenAM 11):
1) Configure OpenAM as OAuth2 Provider that use the global configuration
2) Get an access token
3) Access the tokeninfo endpoint again and again
Reproduction step 3:
Create a chain as per forgerock authenticator chain in the admin guide
put al2.jsp in your webapps/openam directory, altering to match your oath chain
ab -c 50 -n 1000000 http://openam.example.com:18080/openam/al2.jsp
monitor memory usage and performance figures.
Expected result
Memory usage to grow under load and shrink afterwards. Performance to generally stay at the same level after multiple tests
Actual result
Massive memory growth, performance degradation.
- relates to
-
OPENAM-6642 Repeated requests to OAuth2 tokeninfo endpoint can end up creating large numbers of ServiceConfigImpl instances
-
- Resolved
-
-
OPENAM-7579 High performance regression for userinfo and refresh_token requests (Compared to 12.0.2)
-
- Closed
-
-
OPENAM-8023 OAuth2 load: contention at com.sun.identity.sm.ServiceConfigImpl.getInstance level (perf regression compared to AM12.0.2)
-
- Closed
-
-
OPENAM-11154 Memory leak in SMSEventListenerManager#subNodeChanges
-
- Closed
-