[ 
https://issues.apache.org/jira/browse/HBASE-26103?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17384541#comment-17384541
 ] 

Michael Stack commented on HBASE-26103:
---------------------------------------

[~shahrs87] it looks like side-effect of our removal of the AsyncProcess stuff. 
In master, we do the async client (which doesn't need the 'fake' AsyncProcess 
that used underlie the synchronous API). The BufferedMutator is still there but 
changed majorly by the below:

 

HBASE-21725 Implement BufferedMutator Based on AsyncBufferedMutator

 

If member variable unused, yeah purge I'd say.

 

Below is just search on getPool usage.. comparing master and 
branch-2.3/branch-2.

 
{code:java}
This is MASTER
kalashnikov:hbase.apache.git stack$ grep -r -e 'getPool(' hbase-*/src/main/java
hbase-client/src/main/java/org/apache/hadoop/hbase/client/BufferedMutatorParams.java:
  public ExecutorService getPool() {
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/CompactingMemStore.java:
          getPool().execute(runnable);
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/CompactingMemStore.java:
  private ThreadPoolExecutor getPool() {

THIS Is BRANCH-2.3 (which is like branch-2)
kalashnikov:hbase.apache.git stack$ git checkout 2.3
Switched to branch '2.3'
Your branch is up to date with 'origin/branch-2.3'.
kalashnikov:hbase.apache.git stack$ grep -r -e 'getPool(' hbase-*/src/main/java
hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java:  
ExecutorService getPool() {
hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncProcess.java:    
Objects.requireNonNull(task.getPool(), "The pool can't be NULL");
hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java:
    if (params.getPool() == null) {
hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncProcessTask.java:
    this(task.getPool(), task.getTableName(), task.getRowAccess(),
hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncProcessTask.java:
  public ExecutorService getPool() {
hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncRequestFutureImpl.java:
    this.pool = task.getPool();
hbase-client/src/main/java/org/apache/hadoop/hbase/client/BufferedMutatorImpl.java:
    if (params.getPool() == null) {
hbase-client/src/main/java/org/apache/hadoop/hbase/client/BufferedMutatorImpl.java:
      this.pool = params.getPool();
hbase-client/src/main/java/org/apache/hadoop/hbase/client/BufferedMutatorImpl.java:
  ExecutorService getPool() {
hbase-client/src/main/java/org/apache/hadoop/hbase/client/ClientScanner.java:  
protected ExecutorService getPool() {
hbase-client/src/main/java/org/apache/hadoop/hbase/client/BufferedMutatorParams.java:
  public ExecutorService getPool() {
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/CompactingMemStore.java:
          getPool().execute(runnable);
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/CompactingMemStore.java:
  private ThreadPoolExecutor getPool() { {code}

> conn.getBufferedMutator(tableName) leaks thread executors and other problems 
> (for master branch)
> ------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-26103
>                 URL: https://issues.apache.org/jira/browse/HBASE-26103
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Client
>    Affects Versions: 3.0.0-alpha-1
>            Reporter: Rushabh Shah
>            Assignee: Rushabh Shah
>            Priority: Major
>
> This is same as HBASE-26088  but created separate ticket for master branch.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to