hbase git commit: HBASE-21221 Ineffective assertion in TestFromClientSide3#testMultiRowMutations - addendum tightens condition for finding exception

2018-10-03 Thread tedyu
Repository: hbase
Updated Branches:
  refs/heads/master 42aa3dd46 -> b9bb14e0f


HBASE-21221 Ineffective assertion in TestFromClientSide3#testMultiRowMutations 
- addendum tightens condition for finding exception


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

Branch: refs/heads/master
Commit: b9bb14e0fd115f37b627cdc3052336e3bcd0a871
Parents: 42aa3dd
Author: tedyu 
Authored: Wed Oct 3 08:22:57 2018 -0700
Committer: tedyu 
Committed: Wed Oct 3 08:22:57 2018 -0700

--
 .../java/org/apache/hadoop/hbase/client/TestFromClientSide3.java  | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/b9bb14e0/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
index aa5bfb0..0dee20b 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
@@ -53,6 +53,7 @@ import org.apache.hadoop.hbase.coprocessor.ObserverContext;
 import org.apache.hadoop.hbase.coprocessor.RegionCoprocessor;
 import org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment;
 import org.apache.hadoop.hbase.coprocessor.RegionObserver;
+import org.apache.hadoop.hbase.exceptions.UnknownProtocolException;
 import org.apache.hadoop.hbase.ipc.CoprocessorRpcUtils;
 import org.apache.hadoop.hbase.ipc.ServerRpcController;
 import org.apache.hadoop.hbase.protobuf.generated.MultiRowMutationProtos;
@@ -851,7 +852,7 @@ public class TestFromClientSide3 {
   
CoprocessorRpcUtils.BlockingRpcCallback
 rpcCallback = new CoprocessorRpcUtils.BlockingRpcCallback<>();
   exe.mutateRows(controller, request, rpcCallback);
-  if (controller.failedOnException()) {
+  if (controller.failedOnException() && !(controller.getFailedOn() 
instanceof UnknownProtocolException)) {
 exceptionDuringMutateRows.set(true);
   }
   return rpcCallback.get();



hbase git commit: HBASE-21221 Ineffective assertion in TestFromClientSide3#testMultiRowMutations

2018-09-25 Thread tedyu
Repository: hbase
Updated Branches:
  refs/heads/master 8eaaa6311 -> b8134fe5b


HBASE-21221 Ineffective assertion in TestFromClientSide3#testMultiRowMutations


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

Branch: refs/heads/master
Commit: b8134fe5b6ce4a411c79d5bd63404906bf174c3d
Parents: 8eaaa63
Author: tedyu 
Authored: Tue Sep 25 09:17:26 2018 -0700
Committer: tedyu 
Committed: Tue Sep 25 09:17:26 2018 -0700

--
 .../hbase/client/TestFromClientSide3.java   | 21 +++-
 1 file changed, 12 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/b8134fe5/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
index fad4f45..aa5bfb0 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
@@ -35,6 +35,7 @@ import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.ThreadLocalRandom;
 import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.atomic.AtomicInteger;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.Cell;
@@ -829,8 +830,8 @@ public class TestFromClientSide3 {
 }
   });
   ExecutorService cpService = Executors.newSingleThreadExecutor();
+  AtomicBoolean exceptionDuringMutateRows = new AtomicBoolean();
   cpService.execute(() -> {
-boolean threw;
 Put put1 = new Put(row);
 Put put2 = new Put(rowLocked);
 put1.addColumn(FAMILY, QUALIFIER, value1);
@@ -844,26 +845,25 @@ public class TestFromClientSide3 {
   
org.apache.hadoop.hbase.protobuf.generated.ClientProtos.MutationProto.MutationType.PUT,
 put2))
   .build();
   
table.coprocessorService(MultiRowMutationProtos.MultiRowMutationService.class,
-ROW, ROW,
+  ROW, ROW,
 (MultiRowMutationProtos.MultiRowMutationService exe) -> {
   ServerRpcController controller = new ServerRpcController();
   
CoprocessorRpcUtils.BlockingRpcCallback
 rpcCallback = new CoprocessorRpcUtils.BlockingRpcCallback<>();
   exe.mutateRows(controller, request, rpcCallback);
+  if (controller.failedOnException()) {
+exceptionDuringMutateRows.set(true);
+  }
   return rpcCallback.get();
 });
-  threw = false;
 } catch (Throwable ex) {
-  threw = true;
-}
-if (!threw) {
-  // Can't call fail() earlier because the catch would eat it.
-  fail("This cp should fail because the target lock is blocked by 
previous put");
+  LOG.error("encountered " + ex);
 }
   });
   cpService.shutdown();
   cpService.awaitTermination(Long.MAX_VALUE, TimeUnit.DAYS);
-  WaitingForMultiMutationsObserver observer = find(tableName, 
WaitingForMultiMutationsObserver.class);
+  WaitingForMultiMutationsObserver observer = find(tableName,
+  WaitingForMultiMutationsObserver.class);
   observer.latch.countDown();
   putService.shutdown();
   putService.awaitTermination(Long.MAX_VALUE, TimeUnit.DAYS);
@@ -877,6 +877,9 @@ public class TestFromClientSide3 {
 assertTrue(Bytes.equals(r1.getValue(FAMILY, QUALIFIER), value0));
   }
   assertNoLocks(tableName);
+  if (!exceptionDuringMutateRows.get()) {
+fail("This cp should fail because the target lock is blocked by 
previous put");
+  }
 }
   }