atris commented on a change in pull request #1686:
URL: https://github.com/apache/lucene-solr/pull/1686#discussion_r466918853
##########
File path: solr/core/src/java/org/apache/solr/servlet/RequestRateLimiter.java
##########
@@ -53,6 +53,8 @@ public boolean handleRequest() throws InterruptedException {
* Whether to allow another request type to borrow a slot from this request
rate limiter. Typically works fine
* if there is a relatively lesser load on this request rate limiter's type
compared to the others (think of skew).
* @return true if allow, false otherwise
+ *
+ * @lucene.experimental -- Can cause slots to be blocked if a request
borrows a slot and is itself long lived.
*/
public boolean allowSlotBorrowing() {
synchronized (this) {
Review comment:
Good point. I was not sure around using availablePermits for this use
but decided for using it. IMO the worst that can happen is that a request gets
an indication from availablePermits as to the availability of a slot but fails
to acquire it since another concurrent request has acquired the same. The
approach that you suggest is more comprehensive, so changed to that, thanks.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]