Understanding rate limiting and throttling
If we hit the provisioned RU/s rate limit for any operation or query, the Cosmos DB service won't execute this operation and the API will throw a DocumentClientException
 exception with the HttpStatusCode
property set to 429
. This HTTP status code means that the request made to Azure Cosmos DB has exceeded the provisioned throughput and it couldn't be executed.
In some cases, the only way to execute the request would be to increase the provisioned throughput. For example, if we have a single operation that requires more than 1,000 RU/s but we have provisioned only 1,000 RU/s, there will be no way to execute the operation unless we increase the provisioned throughput. No matter the number of times we retry, the operation will always fail. Of course, we should avoid operations that require a huge amount of RU/s.
If we have two operations that require 501 RU/s each and we have provisioned only 1,000 RU/s, neither operation would be able to be executed...