hbase git commit: HBASE-13970 NPE during compaction in trunk

2015-07-02 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/0.98 f04a68f73 - ebb476ba8


HBASE-13970 NPE during compaction in trunk


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/ebb476ba
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/ebb476ba
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/ebb476ba

Branch: refs/heads/0.98
Commit: ebb476ba87ba3ce5894ed1ad9350c5c89b4e0f6c
Parents: f04a68f
Author: zhangduo zhang...@wandoujia.com
Authored: Fri Jun 26 08:10:05 2015 +0800
Committer: zhangduo zhang...@wandoujia.com
Committed: Thu Jul 2 21:39:35 2015 +0800

--
 .../regionserver/compactions/Compactor.java | 22 ++--
 1 file changed, 20 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/ebb476ba/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
index 0b434e8..c4be217 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
@@ -23,6 +23,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -200,6 +201,24 @@ public abstract class Compactor {
   }
 
   /**
+   * Used to prevent compaction name conflict when multiple compactions 
running parallel on the
+   * same store.
+   */
+  private static final AtomicInteger NAME_COUNTER = new AtomicInteger(0);
+
+  private String generateCompactionName() {
+int counter;
+for (;;) {
+  counter = NAME_COUNTER.get();
+  int next = counter == Integer.MAX_VALUE ? 0 : counter + 1;
+  if (NAME_COUNTER.compareAndSet(counter, next)) {
+break;
+  }
+}
+return store.getRegionInfo().getRegionNameAsString() + #
++ store.getFamily().getNameAsString() + # + counter;
+  }
+  /**
* Performs the compaction.
* @param scanner Where to read from.
* @param writer Where to write to.
@@ -219,8 +238,7 @@ public abstract class Compactor {
 if (LOG.isDebugEnabled()) {
   lastMillis = EnvironmentEdgeManager.currentTimeMillis();
 }
-String compactionName =
-store.getRegionInfo().getRegionNameAsString() + # + 
store.getFamily().getNameAsString();
+String compactionName = generateCompactionName();
 long now = 0;
 boolean hasMore;
 throughputController.start(compactionName);



hbase git commit: HBASE-13970 NPE during compaction in trunk

2015-07-02 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-1.1 a9cecf32a - 426a5239c


HBASE-13970 NPE during compaction in trunk


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/426a5239
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/426a5239
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/426a5239

Branch: refs/heads/branch-1.1
Commit: 426a5239c89b939399665b3881c240811279e50c
Parents: a9cecf3
Author: zhangduo zhang...@wandoujia.com
Authored: Fri Jun 26 08:10:05 2015 +0800
Committer: zhangduo zhang...@wandoujia.com
Committed: Thu Jul 2 21:38:30 2015 +0800

--
 .../regionserver/compactions/Compactor.java | 22 ++--
 1 file changed, 20 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/426a5239/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
index 7a5ae25..b66ba33 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
@@ -23,6 +23,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -222,6 +223,24 @@ public abstract class Compactor {
   }
 
   /**
+   * Used to prevent compaction name conflict when multiple compactions 
running parallel on the
+   * same store.
+   */
+  private static final AtomicInteger NAME_COUNTER = new AtomicInteger(0);
+
+  private String generateCompactionName() {
+int counter;
+for (;;) {
+  counter = NAME_COUNTER.get();
+  int next = counter == Integer.MAX_VALUE ? 0 : counter + 1;
+  if (NAME_COUNTER.compareAndSet(counter, next)) {
+break;
+  }
+}
+return store.getRegionInfo().getRegionNameAsString() + #
++ store.getFamily().getNameAsString() + # + counter;
+  }
+  /**
* Performs the compaction.
* @param scanner Where to read from.
* @param writer Where to write to.
@@ -242,8 +261,7 @@ public abstract class Compactor {
 if (LOG.isDebugEnabled()) {
   lastMillis = EnvironmentEdgeManager.currentTime();
 }
-String compactionName =
-store.getRegionInfo().getRegionNameAsString() + # + 
store.getFamily().getNameAsString();
+String compactionName = generateCompactionName();
 long now = 0;
 boolean hasMore;
 ScannerContext scannerContext =



hbase git commit: HBASE-13970 NPE during compaction in trunk

2015-07-02 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-1 0f17b7679 - 9aeda3661


HBASE-13970 NPE during compaction in trunk


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/9aeda366
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/9aeda366
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/9aeda366

Branch: refs/heads/branch-1
Commit: 9aeda36613e97e74507b223c3b894a744048fff1
Parents: 0f17b76
Author: zhangduo zhang...@wandoujia.com
Authored: Fri Jun 26 08:10:05 2015 +0800
Committer: zhangduo zhang...@wandoujia.com
Committed: Thu Jul 2 21:37:25 2015 +0800

--
 .../regionserver/compactions/Compactor.java | 22 ++--
 1 file changed, 20 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/9aeda366/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
index d3a82dd..2c34c70 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
@@ -23,6 +23,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -222,6 +223,24 @@ public abstract class Compactor {
   }
 
   /**
+   * Used to prevent compaction name conflict when multiple compactions 
running parallel on the
+   * same store.
+   */
+  private static final AtomicInteger NAME_COUNTER = new AtomicInteger(0);
+
+  private String generateCompactionName() {
+int counter;
+for (;;) {
+  counter = NAME_COUNTER.get();
+  int next = counter == Integer.MAX_VALUE ? 0 : counter + 1;
+  if (NAME_COUNTER.compareAndSet(counter, next)) {
+break;
+  }
+}
+return store.getRegionInfo().getRegionNameAsString() + #
++ store.getFamily().getNameAsString() + # + counter;
+  }
+  /**
* Performs the compaction.
* @param scanner Where to read from.
* @param writer Where to write to.
@@ -242,8 +261,7 @@ public abstract class Compactor {
 if (LOG.isDebugEnabled()) {
   lastMillis = EnvironmentEdgeManager.currentTime();
 }
-String compactionName =
-store.getRegionInfo().getRegionNameAsString() + # + 
store.getFamily().getNameAsString();
+String compactionName = generateCompactionName();
 long now = 0;
 boolean hasMore;
 ScannerContext scannerContext =



hbase git commit: HBASE-13970 NPE during compaction in trunk

2015-07-02 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-1.2 9446b99a5 - 424457540


HBASE-13970 NPE during compaction in trunk


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/42445754
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/42445754
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/42445754

Branch: refs/heads/branch-1.2
Commit: 42445754057e442ecd9c2b0117b2e3560742ef06
Parents: 9446b99
Author: zhangduo zhang...@wandoujia.com
Authored: Fri Jun 26 08:10:05 2015 +0800
Committer: zhangduo zhang...@wandoujia.com
Committed: Thu Jul 2 21:37:53 2015 +0800

--
 .../regionserver/compactions/Compactor.java | 22 ++--
 1 file changed, 20 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/42445754/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
index d3a82dd..2c34c70 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
@@ -23,6 +23,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -222,6 +223,24 @@ public abstract class Compactor {
   }
 
   /**
+   * Used to prevent compaction name conflict when multiple compactions 
running parallel on the
+   * same store.
+   */
+  private static final AtomicInteger NAME_COUNTER = new AtomicInteger(0);
+
+  private String generateCompactionName() {
+int counter;
+for (;;) {
+  counter = NAME_COUNTER.get();
+  int next = counter == Integer.MAX_VALUE ? 0 : counter + 1;
+  if (NAME_COUNTER.compareAndSet(counter, next)) {
+break;
+  }
+}
+return store.getRegionInfo().getRegionNameAsString() + #
++ store.getFamily().getNameAsString() + # + counter;
+  }
+  /**
* Performs the compaction.
* @param scanner Where to read from.
* @param writer Where to write to.
@@ -242,8 +261,7 @@ public abstract class Compactor {
 if (LOG.isDebugEnabled()) {
   lastMillis = EnvironmentEdgeManager.currentTime();
 }
-String compactionName =
-store.getRegionInfo().getRegionNameAsString() + # + 
store.getFamily().getNameAsString();
+String compactionName = generateCompactionName();
 long now = 0;
 boolean hasMore;
 ScannerContext scannerContext =



hbase git commit: HBASE-13970 NPE during compaction in trunk

2015-07-02 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/master 272b025b2 - 28a035000


HBASE-13970 NPE during compaction in trunk


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/28a03500
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/28a03500
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/28a03500

Branch: refs/heads/master
Commit: 28a035000f3cbf7c2b242d6dd9ba3bf84f4e2503
Parents: 272b025
Author: zhangduo zhang...@wandoujia.com
Authored: Fri Jun 26 08:10:05 2015 +0800
Committer: zhangduo zhang...@wandoujia.com
Committed: Thu Jul 2 21:36:11 2015 +0800

--
 .../regionserver/compactions/Compactor.java | 22 ++--
 1 file changed, 20 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/28a03500/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
index 26fef53..78a5cac 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/Compactor.java
@@ -23,6 +23,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -222,6 +223,24 @@ public abstract class Compactor {
   }
 
   /**
+   * Used to prevent compaction name conflict when multiple compactions 
running parallel on the
+   * same store.
+   */
+  private static final AtomicInteger NAME_COUNTER = new AtomicInteger(0);
+
+  private String generateCompactionName() {
+int counter;
+for (;;) {
+  counter = NAME_COUNTER.get();
+  int next = counter == Integer.MAX_VALUE ? 0 : counter + 1;
+  if (NAME_COUNTER.compareAndSet(counter, next)) {
+break;
+  }
+}
+return store.getRegionInfo().getRegionNameAsString() + #
++ store.getFamily().getNameAsString() + # + counter;
+  }
+  /**
* Performs the compaction.
* @param scanner Where to read from.
* @param writer Where to write to.
@@ -242,8 +261,7 @@ public abstract class Compactor {
 if (LOG.isDebugEnabled()) {
   lastMillis = EnvironmentEdgeManager.currentTime();
 }
-String compactionName =
-store.getRegionInfo().getRegionNameAsString() + # + 
store.getFamily().getNameAsString();
+String compactionName = generateCompactionName();
 long now = 0;
 boolean hasMore;
 ScannerContext scannerContext =