-
Bug
-
Resolution: Fixed
-
High
-
6.2, 6.3.10, 6.4.12
-
6.02
-
4
-
Summary
JIRA has no 'rate limiting' or mail limit on filter subscriptions. This means using certain configurations will allow for a significant amount of mail to be created. As this mail is persisted in memory, it's possible to cause OutOfMemoryError's, even with a significant amount of heap space.
Steps to Reproduce
- Use an instance with a large amount of issues and users, using test mail addresses.
- Enable mail notifications.
- Setup a filter subscription that will notify all users (for example sends to jira-users), using JQL as below:
updated < "-200m"
- Set a high frequency on the updates as per the screenshot.
Expected Results
Some form of rate limiting, or logic is used such that the instance does not result in consuming all of the available heap space and crashing with an OutOfMemoryError.
Actual Results
An OutOfMemoryError is thrown as the heap space fills up with mails.
Workaround
Avoid using filter subscriptions with large recipient bases that use a filter that returns a large amount of issues.
SQLs to check that:
// Check subscription select * from filtersubscription; // check JQL for subscription select s.id, s.reqcontent, s.filtername, s.authorname, fs.groupname from filtersubscription fs join searchrequest s ON fs.filter_i_d = s.id; // Check large groups subscription select * from filtersubscription where groupname in (select parent_name from cwd_membership where membership_type = 'GROUP_USER' group by parent_name, directory_id having count(1) > 100);
- is related to
-
JRASERVER-61543 Outgoing Mail Stopped Working due to Large Group Filter Subscription
- Gathering Impact
- relates to
-
JRASERVER-74338 Filter subscriptions for too many recipients may result in performance degradation or OutOfMemoryError in Jira
- Closed
-
JRASERVER-61543 Outgoing Mail Stopped Working due to Large Group Filter Subscription
- Gathering Impact
-
JRASERVER-17583 Mail notifications should have bounds on the number of members in groups
- Closed
- causes
-
ADM-29542 Loading...
- is cloned by
-
JDEV-36630 Loading...
- supersedes
-
ADM-31043 Loading...