You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "binlijin (JIRA)" <ji...@apache.org> on 2013/06/09 09:02:21 UTC

[jira] [Created] (HBASE-8720) Only one snapshot region tasks that can run at a time

binlijin created HBASE-8720:
-------------------------------

             Summary: Only one snapshot region tasks that can run at a time
                 Key: HBASE-8720
                 URL: https://issues.apache.org/jira/browse/HBASE-8720
             Project: HBase
          Issue Type: Bug
          Components: snapshots
    Affects Versions: 0.95.0, 0.94.8
            Reporter: binlijin


{code}
    SnapshotSubprocedurePool(String name, Configuration conf) {
      // configure the executor service
      long keepAlive = conf.getLong(
        RegionServerSnapshotManager.SNAPSHOT_TIMEOUT_MILLIS_KEY,
        RegionServerSnapshotManager.SNAPSHOT_TIMEOUT_MILLIS_DEFAULT);
      int threads = conf.getInt(CONCURENT_SNAPSHOT_TASKS_KEY, DEFAULT_CONCURRENT_SNAPSHOT_TASKS);
      this.name = name;
      executor = new ThreadPoolExecutor(1, threads, keepAlive, TimeUnit.MILLISECONDS,
          new LinkedBlockingQueue<Runnable>(), new DaemonThreadFactory("rs("
              + name + ")-snapshot-pool"));
      taskPool = new ExecutorCompletionService<Void>(executor);
    }
{code}
ThreadPoolExecutor: 
corePoolSize:1
maximumPoolSize:3
workQueue:LinkedBlockingQueue,unlimited
so when a new task submit to the ThreadPoolExecutor, if there is a task is running, the new task is queued in the queue, so all snapshot region tasks execute one by one.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira