[
https://issues.apache.org/jira/browse/HBASE-8720?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrew Purtell updated HBASE-8720:
----------------------------------
Resolution: Not A Problem
Status: Resolved (was: Patch Available)
> 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.94.8, 0.95.0
> Reporter: binlijin
> Attachments: 8720-v2.txt, HBASE-8720.patch
>
>
> {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 was sent by Atlassian JIRA
(v6.3.4#6332)