You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by GitBox <gi...@apache.org> on 2021/07/22 20:02:53 UTC

[GitHub] [hbase] gjacoby126 opened a new pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

gjacoby126 opened a new pull request #3523:
URL: https://github.com/apache/hbase/pull/3523


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] Apache-HBase commented on pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#issuecomment-885238789


   :confetti_ball: **+1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   1m 48s |  Docker mode activated.  |
   ||| _ Prechecks _ |
   | +1 :green_heart: |  dupname  |   0m  0s |  No case conflicting files found.  |
   | +1 :green_heart: |  hbaseanti  |   0m  0s |  Patch does not have any anti-patterns.  |
   | +1 :green_heart: |  @author  |   0m  0s |  The patch does not contain any @author tags.  |
   ||| _ master Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 17s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   4m 44s |  master passed  |
   | +1 :green_heart: |  compile  |   5m 48s |  master passed  |
   | +1 :green_heart: |  checkstyle  |   2m 13s |  master passed  |
   | +1 :green_heart: |  spotbugs  |   4m 49s |  master passed  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 14s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   4m 33s |  the patch passed  |
   | +1 :green_heart: |  compile  |   5m 47s |  the patch passed  |
   | +1 :green_heart: |  javac  |   5m 47s |  the patch passed  |
   | +1 :green_heart: |  checkstyle  |   2m 29s |  the patch passed  |
   | +1 :green_heart: |  whitespace  |   0m  0s |  The patch has no whitespace issues.  |
   | +1 :green_heart: |  hadoopcheck  |  21m  8s |  Patch does not cause any errors with Hadoop 3.1.2 3.2.1 3.3.0.  |
   | +1 :green_heart: |  spotbugs  |   5m 22s |  the patch passed  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  asflicense  |   0m 44s |  The patch does not generate ASF License warnings.  |
   |  |   |  69m 53s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3523/1/artifact/yetus-general-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/3523 |
   | Optional Tests | dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile |
   | uname | Linux c400644e6549 4.15.0-142-generic #146-Ubuntu SMP Tue Apr 13 01:11:19 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / d15f3cbea3 |
   | Default Java | AdoptOpenJDK-1.8.0_282-b08 |
   | Max. process+thread count | 86 (vs. ulimit of 30000) |
   | modules | C: hbase-common hbase-zookeeper hbase-server hbase-testing-util U: . |
   | Console output | https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3523/1/console |
   | versions | git=2.17.1 maven=3.6.3 spotbugs=4.2.2 |
   | Powered by | Apache Yetus 0.12.0 https://yetus.apache.org |
   
   
   This message was automatically generated.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] Apache9 commented on a change in pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
Apache9 commented on a change in pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#discussion_r675911311



##########
File path: hbase-common/src/test/java/org/apache/hadoop/hbase/HBaseCommonTestingUtil.java
##########
@@ -40,7 +40,9 @@
 /**
  * Common helpers for testing HBase that do not depend on specific server/etc. things.
  */
-@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.PHOENIX)
+@InterfaceAudience.LimitedPrivate({HBaseInterfaceAudience.COPROC,

Review comment:
       I'm not a native English speaker so sorry I can not understand what you mean.
   
   What I say compromise here, is in HBASE-13126, we want to mark HBTU as IA.Private, but consider the current situation, at least we need to mark it as IA.LP("Phoenix"), as we are sure that Phoenix needs to test something internal to HBase. This is a compromise.
   
   But if you offer your help on improving the new testing clsuter interface, I think maybe we could finish the support for Phoenix before 3.0.0 is out, then probably we could mark HBTU as IA.Private in 3.0.0 finally.
   
   Thanks.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] gjacoby126 commented on a change in pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
gjacoby126 commented on a change in pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#discussion_r675865887



##########
File path: hbase-common/src/test/java/org/apache/hadoop/hbase/HBaseCommonTestingUtil.java
##########
@@ -40,7 +40,9 @@
 /**
  * Common helpers for testing HBase that do not depend on specific server/etc. things.
  */
-@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.PHOENIX)
+@InterfaceAudience.LimitedPrivate({HBaseInterfaceAudience.COPROC,

Review comment:
       I'm not sure I understand what the compromise is here? 
   
   For example, I wear three different hats. I write code for HBase itself, for Phoenix, and for my dayjob. You seem to be arguing that the type of test infrastructure I require depends on what hat I'm wearing, not on the code I'm writing. Are you saying that server-side component tests are good when I wear the HBase hat, a tolerated compromise when I wear the Phoenix hat, and bad when I wear the dayjob hat? And that that would be the case _even for the same code _ depending on where I intended to push it when it's done? 
   
   In my view, HBase tests that just exercise the client API should use the TestingHBaseCluster. Same with Phoenix tests, or dayjob tests that only rely on the HBase client API. Tests that exercise server-side components that need the extra control over server-side state should be able to do so. That's true whether the components are housed in an HBase repo, or a Phoenix repo, or any other project, open source or not. 
   
   HBase gives a lot of ways to create server side code, and they all need to be tested. The IA should recognize that.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] gjacoby126 commented on a change in pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
gjacoby126 commented on a change in pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#discussion_r675865887



##########
File path: hbase-common/src/test/java/org/apache/hadoop/hbase/HBaseCommonTestingUtil.java
##########
@@ -40,7 +40,9 @@
 /**
  * Common helpers for testing HBase that do not depend on specific server/etc. things.
  */
-@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.PHOENIX)
+@InterfaceAudience.LimitedPrivate({HBaseInterfaceAudience.COPROC,

Review comment:
       I'm not sure I understand what the compromise is here? 
   
   For example, I wear three different hats. I write code for HBase itself, for Phoenix, and for my dayjob. You seem to be arguing that the type of test infrastructure I require depends on what hat I'm wearing, not on the code I'm writing. I think you're saying that server-side component tests are good when I wear the HBase hat, a tolerated compromise when I wear the Phoenix hat, and bad when I wear the dayjob hat? And that that would be the case _even for the same code _ depending on where I intended to push it when it's done? 
   
   In my view, HBase tests that just exercise the client API should use the TestingHBaseCluster. Same with Phoenix tests, or dayjob tests that only rely on the HBase client API. Tests that exercise server-side components that need the extra control over server-side state should be able to do so. That's true whether the components are housed in an HBase repo, or a Phoenix repo, or any other project, open source or not. 
   
   HBase gives a lot of ways to create server side code, and they all need to be tested. The IA should recognize that.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] gjacoby126 commented on a change in pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
gjacoby126 commented on a change in pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#discussion_r675867695



##########
File path: hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/ServerTestingHBaseCluster.java
##########
@@ -0,0 +1,50 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hadoop.hbase.testing;
+
+import org.apache.hadoop.hbase.HBaseInterfaceAudience;
+import org.apache.hadoop.hbase.HBaseTestingUtil;
+import org.apache.yetus.audience.InterfaceAudience;
+
+/**
+ * This interface is intended for uncommon testing use cases which need to access internal state
+ * on an HBase minicluster. This may be necessary when testing code which runs within an HBase
+ * server process, such as coprocessors or replication endpoints. It provides access to the
+ * underlying {@link HBaseTestingUtil}, which its parent {@link TestingHBaseCluster} interface
+ * intentionally does not. External use cases that just need to test their code using the HBase
+ * client API should use {@link TestingHBaseCluster} instead.
+ */
+@InterfaceAudience.LimitedPrivate(
+  {HBaseInterfaceAudience.COPROC, HBaseInterfaceAudience.REPLICATION,
+    HBaseInterfaceAudience.PHOENIX})
+public interface ServerTestingHBaseCluster extends TestingHBaseCluster {
+  /**
+   *
+   * @return the utility running the minicluster
+   */
+  HBaseTestingUtil getUtil();

Review comment:
       @Apache9 - thanks, that's a good point. In the next revision of this patch, I will create an interface for HBTU (and probably its superclasses) so this interface doesn't return a concrete class. I'm going to be on vacation for about a week but will take this up when I get back. 




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] gjacoby126 closed pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
gjacoby126 closed pull request #3523:
URL: https://github.com/apache/hbase/pull/3523


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] Apache-HBase commented on pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#issuecomment-885296197


   :confetti_ball: **+1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   1m  8s |  Docker mode activated.  |
   | -0 :warning: |  yetus  |   0m  3s |  Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck  |
   ||| _ Prechecks _ |
   ||| _ master Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 15s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   4m 36s |  master passed  |
   | +1 :green_heart: |  compile  |   2m 29s |  master passed  |
   | +1 :green_heart: |  shadedjars  |   8m 43s |  branch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 48s |  master passed  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 16s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   4m 30s |  the patch passed  |
   | +1 :green_heart: |  compile  |   2m 38s |  the patch passed  |
   | +1 :green_heart: |  javac  |   2m 38s |  the patch passed  |
   | +1 :green_heart: |  shadedjars  |   8m 50s |  patch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 44s |  the patch passed  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  unit  |   2m  5s |  hbase-common in the patch passed.  |
   | +1 :green_heart: |  unit  |   0m 47s |  hbase-zookeeper in the patch passed.  |
   | +1 :green_heart: |  unit  | 146m 15s |  hbase-server in the patch passed.  |
   | +1 :green_heart: |  unit  |   1m 45s |  hbase-testing-util in the patch passed.  |
   |  |   | 190m 47s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3523/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/3523 |
   | Optional Tests | javac javadoc unit shadedjars compile |
   | uname | Linux 3a2d0e0bb829 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / d15f3cbea3 |
   | Default Java | AdoptOpenJDK-11.0.10+9 |
   |  Test Results | https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3523/1/testReport/ |
   | Max. process+thread count | 3866 (vs. ulimit of 30000) |
   | modules | C: hbase-common hbase-zookeeper hbase-server hbase-testing-util U: . |
   | Console output | https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3523/1/console |
   | versions | git=2.17.1 maven=3.6.3 |
   | Powered by | Apache Yetus 0.12.0 https://yetus.apache.org |
   
   
   This message was automatically generated.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] gjacoby126 commented on pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
gjacoby126 commented on pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#issuecomment-909702659


   Closing for now as HBASE-26157 is an alternate solution to the same problem


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] gjacoby126 closed pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
gjacoby126 closed pull request #3523:
URL: https://github.com/apache/hbase/pull/3523


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] Apache-HBase commented on pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#issuecomment-885333190


   :confetti_ball: **+1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   1m 17s |  Docker mode activated.  |
   | -0 :warning: |  yetus  |   0m  3s |  Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck  |
   ||| _ Prechecks _ |
   ||| _ master Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 16s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   4m 30s |  master passed  |
   | +1 :green_heart: |  compile  |   2m 16s |  master passed  |
   | +1 :green_heart: |  shadedjars  |   9m 18s |  branch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 31s |  master passed  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 14s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   4m  8s |  the patch passed  |
   | +1 :green_heart: |  compile  |   2m  7s |  the patch passed  |
   | +1 :green_heart: |  javac  |   2m  7s |  the patch passed  |
   | +1 :green_heart: |  shadedjars  |   9m 18s |  patch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 31s |  the patch passed  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  unit  |   2m  2s |  hbase-common in the patch passed.  |
   | +1 :green_heart: |  unit  |   0m 48s |  hbase-zookeeper in the patch passed.  |
   | +1 :green_heart: |  unit  | 252m 31s |  hbase-server in the patch passed.  |
   | +1 :green_heart: |  unit  |   2m 21s |  hbase-testing-util in the patch passed.  |
   |  |   | 297m 13s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3523/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/3523 |
   | Optional Tests | javac javadoc unit shadedjars compile |
   | uname | Linux 6f3642ee8fe1 4.15.0-128-generic #131-Ubuntu SMP Wed Dec 9 06:57:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / d15f3cbea3 |
   | Default Java | AdoptOpenJDK-1.8.0_282-b08 |
   |  Test Results | https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3523/1/testReport/ |
   | Max. process+thread count | 2741 (vs. ulimit of 30000) |
   | modules | C: hbase-common hbase-zookeeper hbase-server hbase-testing-util U: . |
   | Console output | https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3523/1/console |
   | versions | git=2.17.1 maven=3.6.3 |
   | Powered by | Apache Yetus 0.12.0 https://yetus.apache.org |
   
   
   This message was automatically generated.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] Apache9 commented on a change in pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
Apache9 commented on a change in pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#discussion_r675262428



##########
File path: hbase-common/src/test/java/org/apache/hadoop/hbase/HBaseCommonTestingUtil.java
##########
@@ -40,7 +40,9 @@
 /**
  * Common helpers for testing HBase that do not depend on specific server/etc. things.
  */
-@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.PHOENIX)
+@InterfaceAudience.LimitedPrivate({HBaseInterfaceAudience.COPROC,

Review comment:
       Ah, in general let's not do this.
   
   Mark it as IA.LP("Phoenix") is already a compromise, let's not add more compromise here...

##########
File path: hbase-testing-util/src/main/java/org/apache/hadoop/hbase/testing/ServerTestingHBaseCluster.java
##########
@@ -0,0 +1,50 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hadoop.hbase.testing;
+
+import org.apache.hadoop.hbase.HBaseInterfaceAudience;
+import org.apache.hadoop.hbase.HBaseTestingUtil;
+import org.apache.yetus.audience.InterfaceAudience;
+
+/**
+ * This interface is intended for uncommon testing use cases which need to access internal state
+ * on an HBase minicluster. This may be necessary when testing code which runs within an HBase
+ * server process, such as coprocessors or replication endpoints. It provides access to the
+ * underlying {@link HBaseTestingUtil}, which its parent {@link TestingHBaseCluster} interface
+ * intentionally does not. External use cases that just need to test their code using the HBase
+ * client API should use {@link TestingHBaseCluster} instead.
+ */
+@InterfaceAudience.LimitedPrivate(
+  {HBaseInterfaceAudience.COPROC, HBaseInterfaceAudience.REPLICATION,
+    HBaseInterfaceAudience.PHOENIX})
+public interface ServerTestingHBaseCluster extends TestingHBaseCluster {
+  /**
+   *
+   * @return the utility running the minicluster
+   */
+  HBaseTestingUtil getUtil();

Review comment:
       This is a no no.
   
   Let's find another way to only expose the necessary methods for testing coprocessors and other server side hooks such as tags. The point here is, HBaseTestingUtil is a class, not an interface, which makes very hard for the HBase developper to make it stable while keeping it clean.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [hbase] gjacoby126 commented on pull request #3523: HBASE-26115 - ServerTestHBaseCluster interface for testing coprocs

Posted by GitBox <gi...@apache.org>.
gjacoby126 commented on pull request #3523:
URL: https://github.com/apache/hbase/pull/3523#issuecomment-909702659


   Closing for now as HBASE-26157 is an alternate solution to the same problem


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@hbase.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org