I'm using Cosmos DB with Gremlin interface and I'm puzzled with the way Cosmos DB calculates RU limit. For example: i have collection provisioned with 400 RU's. Then I run query which sometimes throws RequestTooLargeException (mind that this collection is shared with other users). When i inspected it on portal, it run to completion consuming almost 800 RU according to log. When i run it again it throws error (as above).
Few questions:
- why it executed once? Shoudn't it be automatically terminated on RU limit exceeded?
- why it cannot be executed again (even after few seconds)
- does any parallel request from other users contributing to this effect? E.g. my query overlaps with other user's query?
In other words: what criteria have to be met for Cosmos DB to throw ReuestRateTooLarge?