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 2020/03/09 23:30:25 UTC

[GitHub] [hbase] joshelser opened a new pull request #1260: HBASE-23381 Ensure Netty client receives at least one response before…

joshelser opened a new pull request #1260: HBASE-23381 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260
 
 
   … considering SASL negotiation complete
   
   The PLAIN mechanism test added in the Shade authentication example has
   different semantics than GSSAPI mechanism -- the client reports that the
   handshake is done after the original challenge is computed. The javadoc
   on SaslClient, however, tells us that we need to wait for a response
   from the server before proceeding.
   
   The client, best as I can see, does not receive any data from HBase;
   however the application semantics (e.g. throw an exception on auth'n
   error) do not work as we intend as a result of this bug.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-602307057
 
 
   Thanks Duo! I'll make the change, run it through QA and try to get this resolved in master. Removing sync impl for master seems right to me.
   
   I'll work on pulling this back to other branches after 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-597354185
 
 
   :broken_heart: **-1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   1m  6s |  Docker mode activated.  |
   | -0 :warning: |  yetus  |   0m  2s |  Unprocessed flag(s): --brief-report-file --findbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck  |
   ||| _ Prechecks _ |
   ||| _ master Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 34s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   5m 56s |  master passed  |
   | +1 :green_heart: |  compile  |   1m 50s |  master passed  |
   | +1 :green_heart: |  shadedjars  |   5m 14s |  branch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 15s |  master passed  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 13s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   5m 40s |  the patch passed  |
   | +1 :green_heart: |  compile  |   1m 51s |  the patch passed  |
   | +1 :green_heart: |  javac  |   1m 51s |  the patch passed  |
   | +1 :green_heart: |  shadedjars  |   5m 10s |  patch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 17s |  the patch passed  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  unit  |   0m 54s |  hbase-client in the patch passed.  |
   | -1 :x: |  unit  | 105m 35s |  hbase-server in the patch failed.  |
   | +1 :green_heart: |  unit  |   2m  6s |  hbase-examples in the patch passed.  |
   |  |   | 141m 14s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | javac javadoc unit shadedjars compile |
   | uname | Linux 35b9bd98b2e9 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / 9c1f2dd0ca |
   | Default Java | 1.8.0_232 |
   | unit | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk8-hadoop2-check/output/patch-unit-hbase-server.txt |
   |  Test Results | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/testReport/ |
   | Max. process+thread count | 6276 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r390518113
 
 

 ##########
 File path: hbase-client/src/main/java/org/apache/hadoop/hbase/security/NettyHBaseSaslRpcClientHandler.java
 ##########
 @@ -114,7 +122,10 @@ public void handlerAdded(ChannelHandlerContext ctx) {
       if (initialResponse != null) {
         writeResponse(ctx, initialResponse);
       }
-      tryComplete(ctx);
+      // HBASE-23881 We do not want to check if the SaslClient thinks the handshake is
 
 Review comment:
   > It does not say that we 'must' call it after we receive the reponse from server.
   
   I was initially thinking the same thing: "why the heck does this implementation say 'i'm done'??". I can read it both ways -- reading the JDK-provided implementations, the "you should wait for a response from the server" was the only interpretation which made any sense to me.
   
   > what is the sasl client implementation
   
   I looked at what was provided in openjdk8 because I had the same question about which mechanisms actually acted this way :). Surveying all mechanisms included, we have two categories. One category is that the mechanism's impl for `isComplete()` returns true after a single call to `evaluateChallenge`, and the other category is that it takes multiple calls to evaluateChallenge to eventually have `isComplete` return true. You can also think of these as "challenge is exactly one step" and "challenge is multiple steps", respectively
   
   * Plain - one step
   * DigestMD5 - multiple steps
   * NTLM - multiple steps
   * GSSAPI/KRB5 -- multiple steps
   * CramMD5 - one step
   * External - one step
   
   This test is using Plain which is in the "one step" category, while all over sasl-based mechanisms previously in HBase are in the "multiple steps" bucket :).
   
   I completely understand your initial reaction that this mechanism is "broken", but, after doing the digging I have, I believe our interpretation of Sasl was just unaware of how some other implementations work in this regard.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] bharathv commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
bharathv commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r391952621
 
 

 ##########
 File path: hbase-examples/src/test/java/org/apache/hadoop/hbase/security/provider/example/TestShadeSaslAuthenticationProvider.java
 ##########
 @@ -220,26 +235,114 @@ public void testPositiveAuthentication() throws Exception {
     }
   }
 
-  @Test(expected = DoNotRetryIOException.class)
-  public void testNegativeAuthentication() throws Exception {
-    // Validate that we can read that record back out as the user with our custom auth'n
-    final Configuration clientConf = new Configuration(CONF);
-    clientConf.setInt(HConstants.HBASE_CLIENT_RETRIES_NUMBER, 3);
-    try (Connection conn = ConnectionFactory.createConnection(clientConf)) {
-      UserGroupInformation user1 = UserGroupInformation.createUserForTesting(
-          "user1", new String[0]);
-      user1.addToken(
-          ShadeClientTokenUtil.obtainToken(conn, "user1", "not a real password".toCharArray()));
-      user1.doAs(new PrivilegedExceptionAction<Void>() {
-        @Override public Void run() throws Exception {
-          try (Connection conn = ConnectionFactory.createConnection(clientConf);
-              Table t = conn.getTable(tableName)) {
-            t.get(new Get(Bytes.toBytes("r1")));
-            fail("Should not successfully authenticate with HBase");
+  @Test
+  public void testNegativeMasterAuthentication() throws Exception {
+    List<Pair<String, Class<? extends Exception>>> params = new ArrayList<>();
+    // Master-based connection will fail to ask the master its cluster ID
+    // as a part of creating the Connection.
+    params.add(new Pair<String, Class<? extends Exception>>(
+        MasterRegistry.class.getName(), MasterRegistryFetchException.class));
+    // ZK based connection will fail on the master RPC
+    params.add(new Pair<String, Class<? extends Exception>>(
+        // ZKConnectionRegistry is package-private
+        "org.apache.hadoop.hbase.client.ZKConnectionRegistry", RetriesExhaustedException.class));
 
 Review comment:
   nit: HConstants#ZK_CONNECTION_REGISTRY_CLASS

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache9 commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache9 commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-596865027
 
 
   OK, I checked the PlainClient, so the assumption here is that, client should have get at least one sasl response from server, even if it has reported as complete? But waht if later sasl client reports complete? Do we still need to wait for the server response? I'm a bit confused.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-597311935
 
 
   :broken_heart: **-1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   0m 32s |  Docker mode activated.  |
   ||| _ Prechecks _ |
   | +1 :green_heart: |  dupname  |   0m  1s |  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 35s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   5m 29s |  master passed  |
   | +1 :green_heart: |  checkstyle  |   1m 58s |  master passed  |
   | +0 :ok: |  spotbugs  |   0m 41s |  Used deprecated FindBugs config; considering switching to SpotBugs.  |
   | -1 :x: |  findbugs  |   3m  0s |  hbase-server in master failed.  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 13s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   5m  2s |  the patch passed  |
   | -0 :warning: |  checkstyle  |   0m 13s |  hbase-examples: The patch generated 3 new + 0 unchanged - 0 fixed = 3 total (was 0)  |
   | +1 :green_heart: |  whitespace  |   0m  0s |  The patch has no whitespace issues.  |
   | +1 :green_heart: |  hadoopcheck  |  16m 13s |  Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.  |
   | -1 :x: |  findbugs  |   4m 38s |  hbase-server in the patch failed.  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  asflicense  |   0m 42s |  The patch does not generate ASF License warnings.  |
   |  |   |  52m  9s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-general-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | dupname asflicense spotbugs findbugs hadoopcheck hbaseanti checkstyle |
   | uname | Linux 4aa6b3d19dc7 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / 9c1f2dd0ca |
   | findbugs | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-general-check/output/branch-findbugs-hbase-server.txt |
   | checkstyle | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-general-check/output/diff-checkstyle-hbase-examples.txt |
   | findbugs | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-general-check/output/patch-findbugs-hbase-server.txt |
   | Max. process+thread count | 94 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) findbugs=3.1.11 |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache9 commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache9 commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-596867525
 
 
   Think again, the end condition here should be:
   
   1. SaslClient.isComplete returns true
   2. Once we have sent out a SaslToken, then we need to get one back.
   
   Let me check the code again.
   
   Found a bug through a roughly looking...
   
   ```
     public byte[] getInitialResponse() throws SaslException {
       if (saslClient.hasInitialResponse()) {
         return saslClient.evaluateChallenge(EMPTY_TOKEN);
       } else {
         return EMPTY_TOKEN;
       }
     }
   ```
   
   Where EMPTY_TOKEN is a byte[0], but in upper layer. we will check null to determine whether we have an initial response...

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-603498435
 
 
   :broken_heart: **-1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   1m 10s |  Docker mode activated.  |
   | -0 :warning: |  yetus  |   0m  2s |  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 34s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   6m 25s |  master passed  |
   | +1 :green_heart: |  compile  |   1m 57s |  master passed  |
   | +1 :green_heart: |  shadedjars  |   5m 30s |  branch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 13s |  master passed  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 15s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   6m  1s |  the patch passed  |
   | +1 :green_heart: |  compile  |   1m 56s |  the patch passed  |
   | +1 :green_heart: |  javac  |   1m 56s |  the patch passed  |
   | +1 :green_heart: |  shadedjars  |   5m 43s |  patch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 22s |  the patch passed  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  unit  |   0m 57s |  hbase-client in the patch passed.  |
   | -1 :x: |  unit  | 100m  7s |  hbase-server in the patch failed.  |
   | +1 :green_heart: |  unit  |   1m 31s |  hbase-examples in the patch passed.  |
   |  |   | 136m 48s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | javac javadoc unit shadedjars compile |
   | uname | Linux 386b5692efee 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / aa53493ae8 |
   | Default Java | 1.8.0_232 |
   | unit | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk8-hadoop2-check/output/patch-unit-hbase-server.txt |
   |  Test Results | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/testReport/ |
   | Max. process+thread count | 4445 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r397331715
 
 

 ##########
 File path: hbase-examples/src/test/java/org/apache/hadoop/hbase/security/provider/example/TestShadeSaslAuthenticationProvider.java
 ##########
 @@ -220,26 +235,114 @@ public void testPositiveAuthentication() throws Exception {
     }
   }
 
-  @Test(expected = DoNotRetryIOException.class)
-  public void testNegativeAuthentication() throws Exception {
-    // Validate that we can read that record back out as the user with our custom auth'n
-    final Configuration clientConf = new Configuration(CONF);
-    clientConf.setInt(HConstants.HBASE_CLIENT_RETRIES_NUMBER, 3);
-    try (Connection conn = ConnectionFactory.createConnection(clientConf)) {
-      UserGroupInformation user1 = UserGroupInformation.createUserForTesting(
-          "user1", new String[0]);
-      user1.addToken(
-          ShadeClientTokenUtil.obtainToken(conn, "user1", "not a real password".toCharArray()));
-      user1.doAs(new PrivilegedExceptionAction<Void>() {
-        @Override public Void run() throws Exception {
-          try (Connection conn = ConnectionFactory.createConnection(clientConf);
-              Table t = conn.getTable(tableName)) {
-            t.get(new Get(Bytes.toBytes("r1")));
-            fail("Should not successfully authenticate with HBase");
+  @Test
+  public void testNegativeMasterAuthentication() throws Exception {
+    List<Pair<String, Class<? extends Exception>>> params = new ArrayList<>();
+    // Master-based connection will fail to ask the master its cluster ID
+    // as a part of creating the Connection.
+    params.add(new Pair<String, Class<? extends Exception>>(
+        MasterRegistry.class.getName(), MasterRegistryFetchException.class));
+    // ZK based connection will fail on the master RPC
+    params.add(new Pair<String, Class<? extends Exception>>(
+        // ZKConnectionRegistry is package-private
+        "org.apache.hadoop.hbase.client.ZKConnectionRegistry", RetriesExhaustedException.class));
+
+    params.forEach((pair) -> {
+      LOG.info("Running negative master authentication test for client registry {}, expecting {}",
+          pair.getFirst(), pair.getSecond().getName());
+      // Validate that we can read that record back out as the user with our custom auth'n
+      final Configuration clientConf = new Configuration(CONF);
+      clientConf.setInt(HConstants.HBASE_CLIENT_RETRIES_NUMBER, 3);
+      clientConf.set(HConstants.CLIENT_CONNECTION_REGISTRY_IMPL_CONF_KEY, pair.getFirst());
+      try (Connection conn = ConnectionFactory.createConnection(clientConf)) {
+        UserGroupInformation user1 = UserGroupInformation.createUserForTesting(
+            "user1", new String[0]);
+        user1.addToken(
+            ShadeClientTokenUtil.obtainToken(conn, "user1", "not a real password".toCharArray()));
+        user1.doAs(new PrivilegedExceptionAction<Void>() {
+          @Override public Void run() throws Exception {
+            try (Connection conn = ConnectionFactory.createConnection(clientConf);) {
+              conn.getAdmin().listTableDescriptors();
+              fail("Should not successfully authenticate with HBase");
+            } catch (Exception e) {
+              LOG.info("Caught exception in negative Master connectivity test", e);
+              assertEquals("Found unexpected exception", pair.getSecond(), e.getClass());
+              validateRootCause(Throwables.getRootCause(e));
+            }
             return null;
           }
-        }
-      });
+        });
+      } catch (InterruptedException e) {
+        LOG.error("Caught interrupted exception", e);
+        Thread.currentThread().interrupt();
+        return;
+      } catch (IOException e) {
+        throw new RuntimeException(e);
+      }
+    });
+  }
+
+  @Test
+  public void testNegativeRegionServerAuthentication() throws Exception {
+    List<Pair<String, Class<? extends Exception>>> params = new ArrayList<>();
+    // Master-based connection will fail to ask the master its cluster ID
+    // as a part of creating the Connection.
+    params.add(new Pair<String, Class<? extends Exception>>(
+        MasterRegistry.class.getName(), MasterRegistryFetchException.class));
+    // ZK based connection will fail on the master RPC
+    params.add(new Pair<String, Class<? extends Exception>>(
+        // ZKConnectionRegistry is package-private
+        "org.apache.hadoop.hbase.client.ZKConnectionRegistry", RetriesExhaustedException.class));
+
+    params.forEach((pair) -> {
+      LOG.info("Running negative master authentication test for client registry {}, expecting {}",
+          pair.getFirst(), pair.getSecond().getName());
+      // Validate that we can read that record back out as the user with our custom auth'n
+      final Configuration clientConf = new Configuration(CONF);
+      clientConf.setInt(HConstants.HBASE_CLIENT_RETRIES_NUMBER, 3);
+      clientConf.set(HConstants.CLIENT_CONNECTION_REGISTRY_IMPL_CONF_KEY, pair.getFirst());
+      try (Connection conn = ConnectionFactory.createConnection(clientConf)) {
+        UserGroupInformation user1 = UserGroupInformation.createUserForTesting(
+            "user1", new String[0]);
+        user1.addToken(
+            ShadeClientTokenUtil.obtainToken(conn, "user1", "not a real password".toCharArray()));
+        user1.doAs(new PrivilegedExceptionAction<Void>() {
+          @Override public Void run() throws Exception {
+            // A little contrived because, with MasterRegistry, we'll still fail on talking
+            // to the HBase master before trying to talk to a RegionServer.
+            try (Connection conn = ConnectionFactory.createConnection(clientConf);
+                Table t = conn.getTable(tableName)) {
+              t.get(new Get(Bytes.toBytes("r1")));
 
 Review comment:
   Good catch! Let me do 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache9 commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache9 commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r390039053
 
 

 ##########
 File path: hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/NettyRpcConnection.java
 ##########
 @@ -149,6 +149,10 @@ private void scheduleRelogin(Throwable error) {
     if (error instanceof FallbackDisallowedException) {
       return;
     }
+    if (!provider.canRetry()) {
 
 Review comment:
   Why this change?

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r397348331
 
 

 ##########
 File path: hbase-client/src/main/java/org/apache/hadoop/hbase/security/AbstractHBaseSaslRpcClient.java
 ##########
 @@ -88,6 +88,14 @@ protected AbstractHBaseSaslRpcClient(Configuration conf,
     }
   }
 
+  /**
+   * Computes the initial response a client sends to a server to begin the SASL
+   * challenge/response handshake. If the client's SASL mechanism does not require
+   * that an initial response is sent to begin the handshake, this method will return
+   * an empty byte array, indicating no initial response needs to be sent by this client.
+   *
+   * @return The client's initial response to send the server, or an empty byte array
+   */
   public byte[] getInitialResponse() throws SaslException {
 
 Review comment:
   All of the mechanisms in openjdk do have a non-empty token, but I agree with your opinion. Fixed this.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-603486194
 
 
   :confetti_ball: **+1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   0m 32s |  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 35s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   6m 33s |  master passed  |
   | +1 :green_heart: |  compile  |   2m  5s |  master passed  |
   | +1 :green_heart: |  shadedjars  |   5m 56s |  branch has no errors when building our shaded downstream artifacts.  |
   | -0 :warning: |  javadoc  |   0m 29s |  hbase-client in master failed.  |
   | -0 :warning: |  javadoc  |   0m 20s |  hbase-examples in master failed.  |
   | -0 :warning: |  javadoc  |   0m 39s |  hbase-server in master failed.  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 17s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   6m 20s |  the patch passed  |
   | +1 :green_heart: |  compile  |   2m  9s |  the patch passed  |
   | +1 :green_heart: |  javac  |   2m  9s |  the patch passed  |
   | +1 :green_heart: |  shadedjars  |   5m 54s |  patch has no errors when building our shaded downstream artifacts.  |
   | -0 :warning: |  javadoc  |   0m 26s |  hbase-client in the patch failed.  |
   | -0 :warning: |  javadoc  |   0m 40s |  hbase-server in the patch failed.  |
   | -0 :warning: |  javadoc  |   0m 20s |  hbase-examples in the patch failed.  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  unit  |   1m  0s |  hbase-client in the patch passed.  |
   | -0 :warning: |  unit  |  71m 19s |  hbase-server in the patch failed.  |
   | +1 :green_heart: |  unit  |   1m 31s |  hbase-examples in the patch passed.  |
   |  |   | 109m 51s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | javac javadoc unit shadedjars compile |
   | uname | Linux 9b83ce09674c 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / aa53493ae8 |
   | Default Java | 2020-01-14 |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-client.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-examples.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-client.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-examples.txt |
   | unit | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt |
   |  Test Results | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/testReport/ |
   | Max. process+thread count | 6215 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] bharathv commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
bharathv commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r391954047
 
 

 ##########
 File path: hbase-examples/src/test/java/org/apache/hadoop/hbase/security/provider/example/TestShadeSaslAuthenticationProvider.java
 ##########
 @@ -220,26 +235,114 @@ public void testPositiveAuthentication() throws Exception {
     }
   }
 
-  @Test(expected = DoNotRetryIOException.class)
-  public void testNegativeAuthentication() throws Exception {
-    // Validate that we can read that record back out as the user with our custom auth'n
-    final Configuration clientConf = new Configuration(CONF);
-    clientConf.setInt(HConstants.HBASE_CLIENT_RETRIES_NUMBER, 3);
-    try (Connection conn = ConnectionFactory.createConnection(clientConf)) {
-      UserGroupInformation user1 = UserGroupInformation.createUserForTesting(
-          "user1", new String[0]);
-      user1.addToken(
-          ShadeClientTokenUtil.obtainToken(conn, "user1", "not a real password".toCharArray()));
-      user1.doAs(new PrivilegedExceptionAction<Void>() {
-        @Override public Void run() throws Exception {
-          try (Connection conn = ConnectionFactory.createConnection(clientConf);
-              Table t = conn.getTable(tableName)) {
-            t.get(new Get(Bytes.toBytes("r1")));
-            fail("Should not successfully authenticate with HBase");
+  @Test
+  public void testNegativeMasterAuthentication() throws Exception {
+    List<Pair<String, Class<? extends Exception>>> params = new ArrayList<>();
+    // Master-based connection will fail to ask the master its cluster ID
+    // as a part of creating the Connection.
+    params.add(new Pair<String, Class<? extends Exception>>(
+        MasterRegistry.class.getName(), MasterRegistryFetchException.class));
+    // ZK based connection will fail on the master RPC
+    params.add(new Pair<String, Class<? extends Exception>>(
+        // ZKConnectionRegistry is package-private
+        "org.apache.hadoop.hbase.client.ZKConnectionRegistry", RetriesExhaustedException.class));
+
+    params.forEach((pair) -> {
+      LOG.info("Running negative master authentication test for client registry {}, expecting {}",
+          pair.getFirst(), pair.getSecond().getName());
+      // Validate that we can read that record back out as the user with our custom auth'n
+      final Configuration clientConf = new Configuration(CONF);
+      clientConf.setInt(HConstants.HBASE_CLIENT_RETRIES_NUMBER, 3);
+      clientConf.set(HConstants.CLIENT_CONNECTION_REGISTRY_IMPL_CONF_KEY, pair.getFirst());
+      try (Connection conn = ConnectionFactory.createConnection(clientConf)) {
+        UserGroupInformation user1 = UserGroupInformation.createUserForTesting(
+            "user1", new String[0]);
+        user1.addToken(
+            ShadeClientTokenUtil.obtainToken(conn, "user1", "not a real password".toCharArray()));
+        user1.doAs(new PrivilegedExceptionAction<Void>() {
+          @Override public Void run() throws Exception {
+            try (Connection conn = ConnectionFactory.createConnection(clientConf);) {
+              conn.getAdmin().listTableDescriptors();
+              fail("Should not successfully authenticate with HBase");
+            } catch (Exception e) {
+              LOG.info("Caught exception in negative Master connectivity test", e);
+              assertEquals("Found unexpected exception", pair.getSecond(), e.getClass());
+              validateRootCause(Throwables.getRootCause(e));
+            }
             return null;
           }
-        }
-      });
+        });
+      } catch (InterruptedException e) {
+        LOG.error("Caught interrupted exception", e);
+        Thread.currentThread().interrupt();
+        return;
+      } catch (IOException e) {
+        throw new RuntimeException(e);
+      }
+    });
+  }
+
+  @Test
+  public void testNegativeRegionServerAuthentication() throws Exception {
+    List<Pair<String, Class<? extends Exception>>> params = new ArrayList<>();
+    // Master-based connection will fail to ask the master its cluster ID
+    // as a part of creating the Connection.
+    params.add(new Pair<String, Class<? extends Exception>>(
+        MasterRegistry.class.getName(), MasterRegistryFetchException.class));
+    // ZK based connection will fail on the master RPC
+    params.add(new Pair<String, Class<? extends Exception>>(
+        // ZKConnectionRegistry is package-private
+        "org.apache.hadoop.hbase.client.ZKConnectionRegistry", RetriesExhaustedException.class));
+
+    params.forEach((pair) -> {
+      LOG.info("Running negative master authentication test for client registry {}, expecting {}",
+          pair.getFirst(), pair.getSecond().getName());
+      // Validate that we can read that record back out as the user with our custom auth'n
+      final Configuration clientConf = new Configuration(CONF);
+      clientConf.setInt(HConstants.HBASE_CLIENT_RETRIES_NUMBER, 3);
+      clientConf.set(HConstants.CLIENT_CONNECTION_REGISTRY_IMPL_CONF_KEY, pair.getFirst());
+      try (Connection conn = ConnectionFactory.createConnection(clientConf)) {
+        UserGroupInformation user1 = UserGroupInformation.createUserForTesting(
+            "user1", new String[0]);
+        user1.addToken(
+            ShadeClientTokenUtil.obtainToken(conn, "user1", "not a real password".toCharArray()));
+        user1.doAs(new PrivilegedExceptionAction<Void>() {
+          @Override public Void run() throws Exception {
+            // A little contrived because, with MasterRegistry, we'll still fail on talking
+            // to the HBase master before trying to talk to a RegionServer.
+            try (Connection conn = ConnectionFactory.createConnection(clientConf);
+                Table t = conn.getTable(tableName)) {
+              t.get(new Get(Bytes.toBytes("r1")));
 
 Review comment:
   Any reason not to merge this test with the above one? except for this line, I think everything else is pretty much the same.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on issue #1260: HBASE-23381 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on issue #1260: HBASE-23381 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-596827894
 
 
   This was a bear to figure out. This is only for Netty -- NIO works fine.
   
   This PR is also only valid for master -- due to the ZK-less MasterRegistry implementation. I think earlier 2.x branches will need custom patches. I'll pick those up after we're good on master.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-596843946
 
 
   :broken_heart: **-1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   4m 40s |  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 32s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   5m 53s |  master passed  |
   | +1 :green_heart: |  checkstyle  |   2m  0s |  master passed  |
   | +0 :ok: |  spotbugs  |   0m 42s |  Used deprecated FindBugs config; considering switching to SpotBugs.  |
   | -1 :x: |  findbugs  |   3m 17s |  hbase-server in master failed.  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 11s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   5m 36s |  the patch passed  |
   | -0 :warning: |  checkstyle  |   0m 13s |  hbase-examples: The patch generated 3 new + 0 unchanged - 0 fixed = 3 total (was 0)  |
   | +1 :green_heart: |  whitespace  |   0m  0s |  The patch has no whitespace issues.  |
   | +1 :green_heart: |  hadoopcheck  |  17m 40s |  Patch does not cause any errors with Hadoop 2.8.5 2.9.2 or 3.1.2.  |
   | -1 :x: |  findbugs  |   3m 13s |  hbase-server in the patch failed.  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  asflicense  |   0m 32s |  The patch does not generate ASF License warnings.  |
   |  |   |  56m 44s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-general-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | dupname asflicense spotbugs findbugs hadoopcheck hbaseanti checkstyle |
   | uname | Linux 74c38e11ee6f 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / 31484f007f |
   | findbugs | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-general-check/output/branch-findbugs-hbase-server.txt |
   | checkstyle | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-general-check/output/diff-checkstyle-hbase-examples.txt |
   | findbugs | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-general-check/output/patch-findbugs-hbase-server.txt |
   | Max. process+thread count | 83 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) findbugs=3.1.11 |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-597279053
 
 
   > Once we have sent out a SaslToken, then we need to get one back.
   
   We could just make some AtomicBoolean, defaulting to false, which is changed to true after the first call to `channelRead0` and then check that value in `tryComplete`, but I can't help but thinking it's less state to manage to just be clear that we need at least one response back from the server.
   
   Do you think it's better to have an explicit check in the code rather than comments saying "don't re-add this"?
   
   > Where EMPTY_TOKEN is a byte[0], but in upper layer. we will check null to determine whether we have an initial response...
   
   Will push a fix for this. Nice catch. I didn't notice 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-603431710
 
 
   Rebased and fixed the last round of requests/suggestions from Bharath and Duo.
   
   I plan to commit to master and 2.x branches that this comes back cleanly to on QA.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache9 commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache9 commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r390040132
 
 

 ##########
 File path: hbase-client/src/main/java/org/apache/hadoop/hbase/security/NettyHBaseSaslRpcClientHandler.java
 ##########
 @@ -114,7 +122,10 @@ public void handlerAdded(ChannelHandlerContext ctx) {
       if (initialResponse != null) {
         writeResponse(ctx, initialResponse);
       }
-      tryComplete(ctx);
+      // HBASE-23881 We do not want to check if the SaslClient thinks the handshake is
 
 Review comment:
   Is this correct? 
   
   The comment is
   ```
         * Determines whether the authentication exchange has completed.
         * This method may be called at any time, but typically, it
         * will not be called until the caller has received indication
         * from the server
         * (in a protocol-specific manner) that the exchange has completed.
   ```
   
   It does not say that we 'must' call it after we receive the reponse from server.
   
   And I'm curious that, what is the sasl client implementation? It just marks itself as complete succeeded, without any server response, and then after the server response it could revert itself as auth failed? I think this is a broken sasl client implementation?

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache9 commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache9 commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-601257713
 
 
   Sorry a bit busy these days. Will try to get sometime this weekendto review the patch more carefully.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-596866986
 
 
   :confetti_ball: **+1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   1m 32s |  Docker mode activated.  |
   | -0 :warning: |  yetus  |   0m  3s |  Unprocessed flag(s): --brief-report-file --findbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck  |
   ||| _ Prechecks _ |
   ||| _ master Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 36s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   6m 10s |  master passed  |
   | +1 :green_heart: |  compile  |   2m  0s |  master passed  |
   | +1 :green_heart: |  shadedjars  |   5m 29s |  branch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 20s |  master passed  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 14s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   6m  1s |  the patch passed  |
   | +1 :green_heart: |  compile  |   2m  0s |  the patch passed  |
   | +1 :green_heart: |  javac  |   2m  0s |  the patch passed  |
   | +1 :green_heart: |  shadedjars  |   5m 22s |  patch has no errors when building our shaded downstream artifacts.  |
   | +1 :green_heart: |  javadoc  |   1m 22s |  the patch passed  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  unit  |   0m 57s |  hbase-client in the patch passed.  |
   | +1 :green_heart: |  unit  | 120m  6s |  hbase-server in the patch passed.  |
   | +1 :green_heart: |  unit  |   3m 17s |  hbase-examples in the patch passed.  |
   |  |   | 158m 57s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | javac javadoc unit shadedjars compile |
   | uname | Linux 48569bd7cf12 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / 31484f007f |
   | Default Java | 1.8.0_232 |
   |  Test Results | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/testReport/ |
   | Max. process+thread count | 5372 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-601274595
 
 
   It's ok. I still owe you a fix-up of the re-introduction of `null` instead of `byte[0]`, too.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-597239402
 
 
   > If you do not mind, I plan to make a overall fix based on your patch and what's important, add more comments to say the rules here, to avoid further confusing of others.
   
   Actually, I'd prefer to keep working on this, but am happy to work with you. I have a vested interest to make sure that, as we're looking at how HBase uses SASL, this is all translating well into the AuthenticationProvider stuff I've recently added into Master. My take is that the interfaces I added are lacking (given what we know about how other mechanisms work), but we could extend them and prevent other developers from making similar errors in the future.
   
   LMK.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-603469927
 
 
   :broken_heart: **-1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   2m 10s |  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 50s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   9m 45s |  master passed  |
   | +1 :green_heart: |  checkstyle  |   3m 39s |  master passed  |
   | -1 :x: |  spotbugs  |   4m 23s |  hbase-server in master has 1 extant spotbugs warnings.  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 38s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   9m  6s |  the patch passed  |
   | -0 :warning: |  checkstyle  |   0m 26s |  hbase-examples: The patch generated 3 new + 0 unchanged - 0 fixed = 3 total (was 0)  |
   | +1 :green_heart: |  whitespace  |   0m  0s |  The patch has no whitespace issues.  |
   | +1 :green_heart: |  hadoopcheck  |  17m 59s |  Patch does not cause any errors with Hadoop 2.10.0 or 3.1.2.  |
   | +1 :green_heart: |  spotbugs  |   5m  1s |  the patch passed  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  asflicense  |   0m 32s |  The patch does not generate ASF License warnings.  |
   |  |   |  73m 39s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-general-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | dupname asflicense spotbugs hadoopcheck hbaseanti checkstyle |
   | uname | Linux 1b037ddd675a 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / aa53493ae8 |
   | spotbugs | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-general-check/output/branch-spotbugs-hbase-server-warnings.html |
   | checkstyle | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/artifact/yetus-general-check/output/diff-checkstyle-hbase-examples.txt |
   | Max. process+thread count | 83 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/3/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) spotbugs=3.1.12 |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-596868693
 
 
   :confetti_ball: **+1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   1m 32s |  Docker mode activated.  |
   | -0 :warning: |  yetus  |   0m  3s |  Unprocessed flag(s): --brief-report-file --findbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck  |
   ||| _ Prechecks _ |
   ||| _ master Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 35s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   7m 31s |  master passed  |
   | +1 :green_heart: |  compile  |   2m 28s |  master passed  |
   | +1 :green_heart: |  shadedjars  |   5m 51s |  branch has no errors when building our shaded downstream artifacts.  |
   | -0 :warning: |  javadoc  |   0m 31s |  hbase-client in master failed.  |
   | -0 :warning: |  javadoc  |   0m 22s |  hbase-examples in master failed.  |
   | -0 :warning: |  javadoc  |   0m 49s |  hbase-server in master failed.  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 21s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   7m 16s |  the patch passed  |
   | +1 :green_heart: |  compile  |   2m 25s |  the patch passed  |
   | +1 :green_heart: |  javac  |   2m 25s |  the patch passed  |
   | +1 :green_heart: |  shadedjars  |   6m 26s |  patch has no errors when building our shaded downstream artifacts.  |
   | -0 :warning: |  javadoc  |   0m 42s |  hbase-client in the patch failed.  |
   | -0 :warning: |  javadoc  |   1m  5s |  hbase-server in the patch failed.  |
   | -0 :warning: |  javadoc  |   0m 34s |  hbase-examples in the patch failed.  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  unit  |   1m 38s |  hbase-client in the patch passed.  |
   | +1 :green_heart: |  unit  | 121m 39s |  hbase-server in the patch passed.  |
   | +1 :green_heart: |  unit  |   1m 49s |  hbase-examples in the patch passed.  |
   |  |   | 165m 43s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | javac javadoc unit shadedjars compile |
   | uname | Linux 56d493d1085e 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / 31484f007f |
   | Default Java | 2020-01-14 |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-client.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-examples.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-client.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-examples.txt |
   |  Test Results | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/testReport/ |
   | Max. process+thread count | 5394 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/1/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache9 commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache9 commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-596869496
 
 
   @joshelser If you do not mind, I plan to make a overall fix based on your patch and what's important, add more comments to say the rules here, to avoid further confusing of others.
   
   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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache9 commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache9 commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r391972390
 
 

 ##########
 File path: hbase-client/src/main/java/org/apache/hadoop/hbase/security/AbstractHBaseSaslRpcClient.java
 ##########
 @@ -88,6 +88,14 @@ protected AbstractHBaseSaslRpcClient(Configuration conf,
     }
   }
 
+  /**
+   * Computes the initial response a client sends to a server to begin the SASL
+   * challenge/response handshake. If the client's SASL mechanism does not require
+   * that an initial response is sent to begin the handshake, this method will return
+   * an empty byte array, indicating no initial response needs to be sent by this client.
+   *
+   * @return The client's initial response to send the server, or an empty byte array
+   */
   public byte[] getInitialResponse() throws SaslException {
 
 Review comment:
   I think we better returns null for no initial response here? Maybe some sasl implementation just use an empty token...

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] bharathv commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
bharathv commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r397624729
 
 

 ##########
 File path: hbase-client/src/main/java/org/apache/hadoop/hbase/security/NettyHBaseSaslRpcClientHandler.java
 ##########
 @@ -114,7 +122,10 @@ public void handlerAdded(ChannelHandlerContext ctx) {
       if (initialResponse != null) {
         writeResponse(ctx, initialResponse);
       }
-      tryComplete(ctx);
+      // HBASE-23881 We do not want to check if the SaslClient thinks the handshake is
 
 Review comment:
   Any chance the second part of your comment be added as a code comment? I was digging into the patch and this comment made it much clear for me. That also explains why we don't see this issue in the GSS/Kerberos implementation.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] joshelser commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
joshelser commented on a change in pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#discussion_r398924292
 
 

 ##########
 File path: hbase-client/src/main/java/org/apache/hadoop/hbase/security/NettyHBaseSaslRpcClientHandler.java
 ##########
 @@ -114,7 +122,10 @@ public void handlerAdded(ChannelHandlerContext ctx) {
       if (initialResponse != null) {
         writeResponse(ctx, initialResponse);
       }
-      tryComplete(ctx);
+      // HBASE-23881 We do not want to check if the SaslClient thinks the handshake is
 
 Review comment:
   Sure, let me add that, too.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
Apache-HBase commented on issue #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260#issuecomment-597341213
 
 
   :confetti_ball: **+1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime | Comment |
   |:----:|----------:|--------:|:--------|
   | +0 :ok: |  reexec  |   1m 18s |  Docker mode activated.  |
   | -0 :warning: |  yetus  |   0m  2s |  Unprocessed flag(s): --brief-report-file --findbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck  |
   ||| _ Prechecks _ |
   ||| _ master Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 33s |  Maven dependency ordering for branch  |
   | +1 :green_heart: |  mvninstall  |   6m 48s |  master passed  |
   | +1 :green_heart: |  compile  |   2m 10s |  master passed  |
   | +1 :green_heart: |  shadedjars  |   5m  9s |  branch has no errors when building our shaded downstream artifacts.  |
   | -0 :warning: |  javadoc  |   0m 28s |  hbase-client in master failed.  |
   | -0 :warning: |  javadoc  |   0m 20s |  hbase-examples in master failed.  |
   | -0 :warning: |  javadoc  |   0m 40s |  hbase-server in master failed.  |
   ||| _ Patch Compile Tests _ |
   | +0 :ok: |  mvndep  |   0m 16s |  Maven dependency ordering for patch  |
   | +1 :green_heart: |  mvninstall  |   6m 17s |  the patch passed  |
   | +1 :green_heart: |  compile  |   2m  9s |  the patch passed  |
   | +1 :green_heart: |  javac  |   2m  9s |  the patch passed  |
   | +1 :green_heart: |  shadedjars  |   4m 57s |  patch has no errors when building our shaded downstream artifacts.  |
   | -0 :warning: |  javadoc  |   0m 26s |  hbase-client in the patch failed.  |
   | -0 :warning: |  javadoc  |   0m 40s |  hbase-server in the patch failed.  |
   | -0 :warning: |  javadoc  |   0m 21s |  hbase-examples in the patch failed.  |
   ||| _ Other Tests _ |
   | +1 :green_heart: |  unit  |   1m  0s |  hbase-client in the patch passed.  |
   | -0 :warning: |  unit  |  74m 15s |  hbase-server in the patch failed.  |
   | +1 :green_heart: |  unit  |   1m 29s |  hbase-examples in the patch passed.  |
   |  |   | 111m 56s |   |
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Docker | Client=19.03.7 Server=19.03.7 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile |
   | GITHUB PR | https://github.com/apache/hbase/pull/1260 |
   | Optional Tests | javac javadoc unit shadedjars compile |
   | uname | Linux 42c70b28ec98 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux |
   | Build tool | maven |
   | Personality | dev-support/hbase-personality.sh |
   | git revision | master / 9c1f2dd0ca |
   | Default Java | 2020-01-14 |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-client.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-examples.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-client.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt |
   | javadoc | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-examples.txt |
   | unit | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt |
   |  Test Results | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/testReport/ |
   | Max. process+thread count | 9635 (vs. ulimit of 10000) |
   | modules | C: hbase-client hbase-server hbase-examples U: . |
   | Console output | https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1260/2/console |
   | versions | git=2.17.1 maven=2018-06-17T18:33:14Z) |
   | Powered by | Apache Yetus 0.11.1 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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [hbase] asfgit closed pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…

Posted by GitBox <gi...@apache.org>.
asfgit closed pull request #1260: HBASE-23881 Ensure Netty client receives at least one response before…
URL: https://github.com/apache/hbase/pull/1260
 
 
   

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services