CLOUD | DATA CENTER AND SERVER
Rate Limiting in Jira Cloud
Overview
Due to Atlassian’s enforced request rate limits for Jira Cloud, the application may respond slower or stop responding for a few minutes depending on the Jira server load.
What are rate limits?
It is a limit enforced on the number of requests or data that can be retrieved from an API endpoint (interface e.g. to Jira) to prevent it from being overwhelmed.
Jira limits the rate of REST API requests to ensure that services are reliable and responsive for customers.
What happens when the rate limit is reached?
Jira endpoints will stop processing requests from the application and user until the request rate falls below the limits.
The user will encounter an unresponsive application, the browser get the response error code 429 – Too many requests. easeRequirements provides a respective message to the user about this situation.
The error occurs per user per application. This means that if this happens while using the app, the user that invoked the error will not be able to use easeRequirements for a certain amount of time but should be able to use the rest of Jira. Other users will not be affected and will still be able to use Jira and R4J.
How is easeRequirements affected?
There are improvement requests for Jira Cloud which will help implement better handling for rate limits in applications. These requests currently block us from testing rate limiting occurrence within the app extensively. We cannot prevent these errors as well since Jira does not publish the allowable rate limits per application.
With these constraints, we can reproduce rate limit errors in easeRequirements through the following scenarios:
Coverage view containing more than 1000 issues in total – 5 columns with unique issue links per column with each issue having several linked issues.
Several tabs open requesting to load large coverage saved views simultaneously.
Executing "expand all" on a tree view with many issues.
Recommended Workaround(s)
Optimize column configurations for coverage view to avoid unnecessary load on Jira Cloud endpoints.