Philip Zeyliger has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/11561 )

Change subject: WIP IMPALA-7626: Throttle partial RPC requests
......................................................................


Patch Set 2:

(1 comment)

It seems like this change limits the number of RPCs we can execute 
simultaneously for a specific endpoint. Would a simpler approach be to use a 
Semaphore to do the limiting? (A Guava RateLimiter class is also an option; 
they have related but different semantics.) You're always using 
"pool.submit(work).get()" so the calling thread is never doing anything while 
the RPC is outstanding, so I don't think you're getting a parallelization 
benefit from the pool.

Regardless of which approach you take, please be sure to have timeouts on the 
pool stuff. If it gets stuck, we want the query to fail rather than hang 
indefinitely.

I'll also note that the interesting throttle is on the catalog side. I don't 
think we're going to go there right now, but it's interesting to share the 
catalog-side queue of its RPCs fairly according to user or pool or whatever.

Thanks!

http://gerrit.cloudera.org:8080/#/c/11561/2/fe/src/main/java/org/apache/impala/catalog/CatalogServiceCatalog.java
File fe/src/main/java/org/apache/impala/catalog/CatalogServiceCatalog.java:

http://gerrit.cloudera.org:8080/#/c/11561/2/fe/src/main/java/org/apache/impala/catalog/CatalogServiceCatalog.java@277
PS2, Line 277:     CatalogPartialRpcMgr.init(this,
             :         
BackendConfig.INSTANCE.getCatalogPartialRpcThreadpoolSize(), maxQueueLen);
If you're going to initalize this here, why not just create it here, and not 
have a singleton? You can say this.partialRpcMgr = new ....() and avoid the 
singleton.



--
To view, visit http://gerrit.cloudera.org:8080/11561
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I11f77a16cfa38ada42d8b7c859850198ea7dd142
Gerrit-Change-Number: 11561
Gerrit-PatchSet: 2
Gerrit-Owner: Bharath Vissapragada <bhara...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Gerrit-Reviewer: Philip Zeyliger <phi...@cloudera.com>
Gerrit-Reviewer: Tianyi Wang <tw...@cloudera.com>
Gerrit-Reviewer: Vuk Ercegovac <vercego...@cloudera.com>
Gerrit-Comment-Date: Tue, 02 Oct 2018 16:12:05 +0000
Gerrit-HasComments: Yes

Reply via email to