[OPENAM-12643] Notification listeners are stored in sets potentially allowing loss of listeners Created: 18/Mar/18  Updated: 26/Apr/18  Resolved: 23/Mar/18

Status: Resolved
Project: OpenAM
Component/s: sms
Affects Version/s: 6.0.0
Fix Version/s: 6.0.0, 14.1.2, 5.5.2

Type: Bug Priority: Major
Reporter: Peter Major [X] (Inactive) Assignee: Peter Major [X] (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
is caused by OPENAM-12642 ServiceConfigManagerImpl does not imp... Resolved
Target Version/s:
Needs backport:
Needs QA verification:
Functional tests:
Are the reproduction steps defined?:
Yes and I used the same an in the description


Bug description

SMSNotificationManager temporarily stores the changeListeners in Set objects before iterating through them, however this means that depending on the hashCode/equals implementations it is possible that certain listeners get lost during this process.

How to reproduce the issue

Don't really have reproduction steps for this one.

Expected behaviour

Listeners are stored in collections that allow storage of non-unique elements.

Current behaviour

Listeners can be lost.

Comment by Peter Major [X] (Inactive) [ 18/Mar/18 ]

When OPENAM-12642 is resolved, this issue breaks the notification mechanism.

Generated at Wed Nov 25 05:14:30 UTC 2020 using Jira 7.13.12#713012-sha1:6e07c38070d5191bbf7353952ed38f111754533a.