Skip to content

Conversation

@anmolnar
Copy link
Contributor

@anmolnar anmolnar commented Jan 25, 2022

Implemented the environment variable based approach for detecting available JWT tokens. ConnectionFactory will check for the presence of "HADOOP_JWT" environment variable and adds it to user's credentials. Format of value is
<base64_encoded_jwt>,<expiry in DateTimeFormatter.ISO_ZONED_DATE_TIME format>

Expiry info is optional.

export HADOOP_JWT="Tm90aGluZyBpcyB0cnVlOyBldmVyeXRoaW5nIGlzIHBlcm1pdHRlZAo=,2022-01-25T16:59:48.614000+00:00"

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 28s Docker mode activated.
-0 ⚠️ yetus 0m 4s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 17s Maven dependency ordering for branch
+1 💚 mvninstall 4m 53s HBASE-26553 passed
+1 💚 compile 0m 57s HBASE-26553 passed
+1 💚 shadedjars 8m 59s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 54s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 17s Maven dependency ordering for patch
+1 💚 mvninstall 4m 44s the patch passed
+1 💚 compile 0m 59s the patch passed
+1 💚 javac 0m 59s the patch passed
+1 💚 shadedjars 8m 49s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 50s the patch passed
_ Other Tests _
+1 💚 unit 2m 9s hbase-common in the patch passed.
+1 💚 unit 1m 29s hbase-client in the patch passed.
37m 27s
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-4064/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #4064
Optional Tests javac javadoc unit shadedjars compile
uname Linux 4a1b51108fcc 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 HBASE-26553 / 2176bd7
Default Java AdoptOpenJDK-11.0.10+9
Test Results https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4064/1/testReport/
Max. process+thread count 308 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4064/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 8s Docker mode activated.
-0 ⚠️ yetus 0m 3s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 16s Maven dependency ordering for branch
+1 💚 mvninstall 4m 41s HBASE-26553 passed
+1 💚 compile 0m 56s HBASE-26553 passed
+1 💚 shadedjars 9m 15s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 50s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 16s Maven dependency ordering for patch
+1 💚 mvninstall 4m 34s the patch passed
+1 💚 compile 0m 54s the patch passed
+1 💚 javac 0m 54s the patch passed
+1 💚 shadedjars 9m 23s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 43s the patch passed
_ Other Tests _
+1 💚 unit 2m 23s hbase-common in the patch passed.
+1 💚 unit 1m 53s hbase-client in the patch passed.
38m 46s
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-4064/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #4064
Optional Tests javac javadoc unit shadedjars compile
uname Linux 3d9d0cd2870e 4.15.0-163-generic #171-Ubuntu SMP Fri Nov 5 11:55:11 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-26553 / 2176bd7
Default Java AdoptOpenJDK-1.8.0_282-b08
Test Results https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4064/1/testReport/
Max. process+thread count 228 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4064/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 2m 23s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 14s Maven dependency ordering for branch
+1 💚 mvninstall 4m 35s HBASE-26553 passed
+1 💚 compile 1m 47s HBASE-26553 passed
+1 💚 checkstyle 0m 53s HBASE-26553 passed
+1 💚 spotbugs 1m 47s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 12s Maven dependency ordering for patch
+1 💚 mvninstall 4m 16s the patch passed
+1 💚 compile 1m 44s the patch passed
+1 💚 javac 1m 44s the patch passed
-0 ⚠️ checkstyle 0m 27s hbase-client: The patch generated 1 new + 0 unchanged - 1 fixed = 1 total (was 1)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 21m 39s Patch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚 spotbugs 2m 10s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 23s The patch does not generate ASF License warnings.
52m 11s
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-4064/1/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #4064
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile
uname Linux 85d2dae5791c 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-26553 / 2176bd7
Default Java AdoptOpenJDK-1.8.0_282-b08
checkstyle https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4064/1/artifact/yetus-general-check/output/diff-checkstyle-hbase-client.txt
Max. process+thread count 86 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4064/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.

@joshelser joshelser self-requested a review February 11, 2022 18:31
Copy link
Member

@joshelser joshelser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A couple of nit-picky things, but looks good!

}

/**
* Check whether an OAuth Beaerer token is provided in environment variable HADOOP_JWT.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Check whether an OAuth Beaerer token is provided in environment variable HADOOP_JWT.
* Check whether an OAuth Bearer token is provided in environment variable HBASE_JWT.

ZonedDateTime lifetime = ZonedDateTime.parse(tokens[1]);
lifetimeMs = lifetime.toInstant().toEpochMilli();
} catch (DateTimeParseException e) {
LOG.warn("Unable to parse JWT expiry: {}", tokens[1]);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reading addTokenForUser(String, Token, long), it seems like we don't need to have a lifetime, which matches the warning (not failure) here. Lazy question: do we have an "expectation" on how it should work? Like, does Knox always give us a lifetime? What about the nimbus test server?

If the jwt server doesn't give us a lifetime, do we have any kind of loss of functionality on the HBase client side?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lifetime is generally needed for the overlap of token renewal when you're having 2 tokens at the same time in your subject credentials. In this case the client have to choose the most recent one for the authentication. This logic is already implemented, but lifetimeMs is a must for this to work.

Yes, in the Knox response you'll get the base64 encoded token and the lifetimeMs in the JSON. Theoretically it's also possible to parse the expiry field from the JWT itself, but the question here is do you want to do that without signature validation? If not, the client will also have to be capable of JWT validation like the server.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Theoretically it's also possible to parse the expiry field from the JWT itself, but the question here is do you want to do that without signature validation? If not, the client will also have to be capable of JWT validation like the server.

Yeah, I would not suggest that we push the validation logic into the client (at least without a very good reason)

but lifetimeMs is a must for this to work.

If lifetimeMs is going to be important for the token selection to work, I think we should just throw an Exception if we can't parse the timestamp. Otherwise, we'll get questions later about why renewal/expiration/selection logic didn't work correctly.

If we're going to focus on Knox as the authorization server, let's build the implementation as to how Knox works. As we want to support other authz servers, it will be easier to codify "supported features" of different authorization servers.

@Test
public void testAddTokenFromEnvVar() {
// Arrange
User user = User.createUserForTesting(new HBaseConfiguration(), "testuser", new String[] {});
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
User user = User.createUserForTesting(new HBaseConfiguration(), "testuser", new String[] {});
User user = User.createUserForTesting(HBaseConfiguration.create(), "testuser", new String[] {});

long numberOfTokens = user.getTokens().stream()
.filter((t) -> new Text(TOKEN_KIND).equals(t.getKind()))
.count();
assertEquals("Invalid number of tokens on User",1, numberOfTokens);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
assertEquals("Invalid number of tokens on User",1, numberOfTokens);
assertEquals("Invalid number of tokens on User", 1, numberOfTokens);

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 39s Docker mode activated.
-0 ⚠️ yetus 0m 3s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 45s Maven dependency ordering for branch
+1 💚 mvninstall 3m 58s HBASE-26553 passed
+1 💚 compile 0m 32s HBASE-26553 passed
+1 💚 shadedjars 4m 11s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 29s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 11s Maven dependency ordering for patch
+1 💚 mvninstall 2m 54s the patch passed
+1 💚 compile 0m 31s the patch passed
+1 💚 javac 0m 31s the patch passed
+1 💚 shadedjars 4m 7s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 29s the patch passed
_ Other Tests _
+1 💚 unit 2m 32s hbase-common in the patch passed.
+1 💚 unit 1m 52s hbase-client in the patch passed.
24m 16s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #4064
Optional Tests javac javadoc unit shadedjars compile
uname Linux 05d6e03fb6ea 5.4.0-1047-aws #49~18.04.1-Ubuntu SMP Wed Apr 28 23:08:58 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-26553 / c11f377
Default Java AdoptOpenJDK-11.0.10+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/testReport/
Max. process+thread count 124 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 19s Docker mode activated.
-0 ⚠️ yetus 0m 3s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 14s Maven dependency ordering for branch
+1 💚 mvninstall 2m 47s HBASE-26553 passed
+1 💚 compile 0m 29s HBASE-26553 passed
+1 💚 shadedjars 4m 15s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 32s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 11s Maven dependency ordering for patch
+1 💚 mvninstall 2m 58s the patch passed
+1 💚 compile 0m 46s the patch passed
+1 💚 javac 0m 46s the patch passed
+1 💚 shadedjars 5m 14s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 32s the patch passed
_ Other Tests _
+1 💚 unit 2m 25s hbase-common in the patch passed.
+1 💚 unit 1m 51s hbase-client in the patch passed.
24m 52s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #4064
Optional Tests javac javadoc unit shadedjars compile
uname Linux 54e642335c75 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-26553 / c11f377
Default Java AdoptOpenJDK-1.8.0_282-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/testReport/
Max. process+thread count 103 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 4s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 11s Maven dependency ordering for branch
+1 💚 mvninstall 2m 34s HBASE-26553 passed
+1 💚 compile 1m 5s HBASE-26553 passed
+1 💚 checkstyle 0m 32s HBASE-26553 passed
+1 💚 spotbugs 1m 9s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 11s Maven dependency ordering for patch
+1 💚 mvninstall 2m 20s the patch passed
+1 💚 compile 1m 5s the patch passed
+1 💚 javac 1m 5s the patch passed
-0 ⚠️ checkstyle 0m 14s hbase-client: The patch generated 1 new + 0 unchanged - 1 fixed = 1 total (was 1)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 11m 17s Patch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚 spotbugs 1m 20s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 18s The patch does not generate ASF License warnings.
28m 50s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #4064
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile
uname Linux 687830f232e0 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-26553 / c11f377
Default Java AdoptOpenJDK-1.8.0_282-b08
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/artifact/yetus-general-check/output/diff-checkstyle-hbase-client.txt
Max. process+thread count 60 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/3/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.

@anmolnar
Copy link
Contributor Author

anmolnar commented Mar 2, 2022

@joshelser The builds are finally green on this patch and I addressed your review comments. PTAL.

Copy link
Member

@joshelser joshelser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unless you think strongly otherwise, let's just throw an exception for missing lifetime or expiration instead of logging a debug message. Otherwise, looks good.

ZonedDateTime lifetime = ZonedDateTime.parse(tokens[1]);
lifetimeMs = lifetime.toInstant().toEpochMilli();
} catch (DateTimeParseException e) {
LOG.warn("Unable to parse JWT expiry: {}", tokens[1]);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Theoretically it's also possible to parse the expiry field from the JWT itself, but the question here is do you want to do that without signature validation? If not, the client will also have to be capable of JWT validation like the server.

Yeah, I would not suggest that we push the validation logic into the client (at least without a very good reason)

but lifetimeMs is a must for this to work.

If lifetimeMs is going to be important for the token selection to work, I think we should just throw an Exception if we can't parse the timestamp. Otherwise, we'll get questions later about why renewal/expiration/selection logic didn't work correctly.

If we're going to focus on Knox as the authorization server, let's build the implementation as to how Knox works. As we want to support other authz servers, it will be easier to codify "supported features" of different authorization servers.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 50s Docker mode activated.
-0 ⚠️ yetus 0m 4s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 16s Maven dependency ordering for branch
+1 💚 mvninstall 2m 59s HBASE-26553 passed
+1 💚 compile 0m 33s HBASE-26553 passed
+1 💚 shadedjars 4m 27s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 31s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 11s Maven dependency ordering for patch
+1 💚 mvninstall 2m 40s the patch passed
+1 💚 compile 0m 35s the patch passed
+1 💚 javac 0m 35s the patch passed
+1 💚 shadedjars 4m 31s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 30s the patch passed
_ Other Tests _
+1 💚 unit 2m 27s hbase-common in the patch passed.
+1 💚 unit 1m 51s hbase-client in the patch passed.
23m 21s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #4064
Optional Tests javac javadoc unit shadedjars compile
uname Linux 634761809a09 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-26553 / c11f377
Default Java AdoptOpenJDK-1.8.0_282-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/testReport/
Max. process+thread count 105 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 20s Docker mode activated.
-0 ⚠️ yetus 0m 3s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 16s Maven dependency ordering for branch
+1 💚 mvninstall 4m 25s HBASE-26553 passed
+1 💚 compile 0m 53s HBASE-26553 passed
+1 💚 shadedjars 5m 14s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 48s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 14s Maven dependency ordering for patch
+1 💚 mvninstall 4m 2s the patch passed
+1 💚 compile 0m 51s the patch passed
+1 💚 javac 0m 51s the patch passed
+1 💚 shadedjars 5m 22s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 43s the patch passed
_ Other Tests _
+1 💚 unit 3m 44s hbase-common in the patch passed.
+1 💚 unit 2m 57s hbase-client in the patch passed.
32m 8s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #4064
Optional Tests javac javadoc unit shadedjars compile
uname Linux fc4ffd7f5335 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-26553 / c11f377
Default Java AdoptOpenJDK-11.0.10+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/testReport/
Max. process+thread count 118 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 46s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
_ HBASE-26553 Compile Tests _
+0 🆗 mvndep 0m 54s Maven dependency ordering for branch
+1 💚 mvninstall 3m 54s HBASE-26553 passed
+1 💚 compile 1m 11s HBASE-26553 passed
+1 💚 checkstyle 0m 32s HBASE-26553 passed
+1 💚 spotbugs 1m 18s HBASE-26553 passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 10s Maven dependency ordering for patch
+1 💚 mvninstall 2m 47s the patch passed
+1 💚 compile 1m 11s the patch passed
+1 💚 javac 1m 11s the patch passed
-0 ⚠️ checkstyle 0m 16s hbase-client: The patch generated 1 new + 0 unchanged - 1 fixed = 1 total (was 1)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 12m 59s Patch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚 spotbugs 1m 27s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 17s The patch does not generate ASF License warnings.
33m 35s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #4064
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile
uname Linux d3a28570c3fb 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-26553 / c11f377
Default Java AdoptOpenJDK-1.8.0_282-b08
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/artifact/yetus-general-check/output/diff-checkstyle-hbase-client.txt
Max. process+thread count 60 (vs. ulimit of 30000)
modules C: hbase-common hbase-client U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4064/4/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.

@joshelser joshelser merged commit d94c472 into apache:HBASE-26553 Mar 25, 2022
@anmolnar anmolnar deleted the HBASE-26667 branch March 28, 2022 13:24
anmolnar added a commit to anmolnar/hbase that referenced this pull request Aug 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants