You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by wc...@apache.org on 2020/05/19 08:43:07 UTC
[hbase-operator-tools] branch master updated: HBASE-24398
[hbase-operator-tools] Fix RegionsMerger ConcurrentModificationException
#60
This is an automated email from the ASF dual-hosted git repository.
wchevreuil pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase-operator-tools.git
The following commit(s) were added to refs/heads/master by this push:
new 7deeb9d HBASE-24398 [hbase-operator-tools] Fix RegionsMerger ConcurrentModificationException #60
7deeb9d is described below
commit 7deeb9d34706255143af7e9891b24f4b3e1be50f
Author: ChenKai <51...@qq.com>
AuthorDate: Tue May 19 16:42:56 2020 +0800
HBASE-24398 [hbase-operator-tools] Fix RegionsMerger ConcurrentModificationException #60
Signed-off-by: Wellington Chevreuil <wc...@apache.org>
---
hbase-tools/src/main/java/org/apache/hbase/RegionsMerger.java | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/hbase-tools/src/main/java/org/apache/hbase/RegionsMerger.java b/hbase-tools/src/main/java/org/apache/hbase/RegionsMerger.java
index afe3ab4..dd23abb 100644
--- a/hbase-tools/src/main/java/org/apache/hbase/RegionsMerger.java
+++ b/hbase-tools/src/main/java/org/apache/hbase/RegionsMerger.java
@@ -25,10 +25,9 @@ import static org.apache.hadoop.hbase.TableName.META_TABLE_NAME;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.Future;
import java.util.concurrent.atomic.LongAdder;
@@ -168,7 +167,7 @@ public class RegionsMerger extends Configured implements org.apache.hadoop.util.
LongAdder lastTimeProgessed = new LongAdder();
//need to get all regions for the table, regardless of region state
List<RegionInfo> regions = admin.getRegions(table);
- Map<Future, Pair<RegionInfo, RegionInfo>> regionsMerging = new HashMap<>();
+ Map<Future, Pair<RegionInfo, RegionInfo>> regionsMerging = new ConcurrentHashMap<>();
long roundsNoProgress = 0;
while (regions.size() > targetRegions) {
LOG.info("Iteration: {}", counter);