Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HBASE-27206 Clean up error-prone findings in hbase-common #4645

Merged
merged 1 commit into from
Aug 21, 2022

Conversation

apurtell
Copy link
Contributor

No description provided.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 49s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s 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.
_ master Compile Tests _
+1 💚 mvninstall 3m 1s master passed
+1 💚 compile 0m 35s master passed
+1 💚 checkstyle 0m 15s master passed
+1 💚 spotless 0m 48s branch has no errors when running spotless:check.
+1 💚 spotbugs 0m 34s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 45s the patch passed
+1 💚 compile 0m 49s the patch passed
+1 💚 javac 0m 49s hbase-common generated 0 new + 0 unchanged - 151 fixed = 0 total (was 151)
-0 ⚠️ checkstyle 0m 23s hbase-common: The patch generated 4 new + 145 unchanged - 13 fixed = 149 total (was 158)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 17m 44s Patch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚 spotless 0m 52s patch has no errors when running spotless:check.
+1 💚 spotbugs 0m 38s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 11s The patch does not generate ASF License warnings.
36m 55s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/1/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #4645
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux da976a76c3b7 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / 31fc97e
Default Java AdoptOpenJDK-1.8.0_282-b08
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/1/artifact/yetus-general-check/output/diff-checkstyle-hbase-common.txt
Max. process+thread count 70 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/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.

@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 _
_ master Compile Tests _
+1 💚 mvninstall 2m 31s master passed
+1 💚 compile 0m 15s master passed
+1 💚 shadedjars 4m 3s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 14s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 11s the patch passed
+1 💚 compile 0m 14s the patch passed
+1 💚 javac 0m 14s the patch passed
+1 💚 shadedjars 4m 2s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 12s the patch passed
_ Other Tests _
+1 💚 unit 1m 23s hbase-common in the patch passed.
+1 💚 unit 200m 11s hbase-server in the patch passed.
217m 27s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #4645
Optional Tests javac javadoc unit shadedjars compile
uname Linux 6466517cd1d4 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 master / 31fc97e
Default Java AdoptOpenJDK-1.8.0_282-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/1/testReport/
Max. process+thread count 2782 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/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 2s 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 _
_ master Compile Tests _
+1 💚 mvninstall 2m 55s master passed
+1 💚 compile 0m 17s master passed
+1 💚 shadedjars 3m 51s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 18s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 41s the patch passed
+1 💚 compile 0m 17s the patch passed
+1 💚 javac 0m 17s the patch passed
+1 💚 shadedjars 3m 48s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 17s hbase-common generated 0 new + 4 unchanged - 10 fixed = 4 total (was 14)
_ Other Tests _
+1 💚 unit 1m 45s hbase-common in the patch passed.
+1 💚 unit 213m 10s hbase-server in the patch passed.
232m 20s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #4645
Optional Tests javac javadoc unit shadedjars compile
uname Linux 8a5f89509fe2 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 master / 31fc97e
Default Java AdoptOpenJDK-11.0.10+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/1/testReport/
Max. process+thread count 2488 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/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.

Copy link
Contributor

@Apache9 Apache9 left a comment

Choose a reason for hiding this comment

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

Overall LGTM. Left a few comments.

Thanks @apurtell for the hard work!

private byte[] keyOnlyBuffer;
private short rowLength;
private int familyOffset;
private byte familyLength;
private int qualifierOffset;
private int qualifierLength;
private long timestamp;
private long timeStamp;
Copy link
Contributor

Choose a reason for hiding this comment

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

I think timestamp is a valid word in English?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This was an instance of the error-prone warning about inconsistent caps with respect to the field name and getter/setter or constructor parameter name. https://github.com/google/error-prone/blob/master/docs/bugpattern/InconsistentCapitalization.md

Copy link
Contributor

Choose a reason for hiding this comment

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

Searched our code base, there are bunch of mixed TimeStamp and Timestamp usages... We even have code like this:

.setTimestampsOfLastAppliedOp(rls.getTimeStampsOfLastAppliedOp())

And in the same protobuf message, we have mixed style of timestamps...

message ReplicationLoadSink {
  required uint64 ageOfLastAppliedOp = 1;
  required uint64 timeStampsOfLastAppliedOp = 2;
  // The below two were added after hbase-2.0.0 went out. They have to be added as 'optional' else
  // we break upgrades; old RegionServers reporting in w/ old forms of this message will fail to
  // deserialize on the new Master. See HBASE-25234
  optional uint64 timestampStarted = 3;
  optional uint64 totalOpsProcessed = 4;
}

So I tend to leave it as it for now. Maybe we should start a discussion thread on the dev list on how to better fix these problems...

Copy link
Contributor

Choose a reason for hiding this comment

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

If we do not change the public method declaration I think it is fine. Can discuss this later.

@apurtell
Copy link
Contributor Author

Rebase. Address review feedback.

@apurtell apurtell requested a review from Apache9 July 26, 2022 00:16
@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 50s 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.
_ master Compile Tests _
+1 💚 mvninstall 2m 27s master passed
+1 💚 compile 0m 31s master passed
+1 💚 checkstyle 0m 14s master passed
+1 💚 spotless 0m 44s branch has no errors when running spotless:check.
+1 💚 spotbugs 0m 28s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 10s the patch passed
+1 💚 compile 0m 28s the patch passed
+1 💚 javac 0m 28s hbase-common generated 0 new + 0 unchanged - 151 fixed = 0 total (was 151)
-0 ⚠️ checkstyle 0m 12s hbase-common: The patch generated 3 new + 145 unchanged - 13 fixed = 148 total (was 158)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 11m 51s Patch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚 spotless 0m 43s patch has no errors when running spotless:check.
+1 💚 spotbugs 0m 32s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 9s The patch does not generate ASF License warnings.
26m 35s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #4645
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux dc2438b9bf14 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / ca545c4
Default Java AdoptOpenJDK-1.8.0_282-b08
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/artifact/yetus-general-check/output/diff-checkstyle-hbase-common.txt
Max. process+thread count 69 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 56s 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 _
_ master Compile Tests _
+1 💚 mvninstall 3m 8s master passed
+1 💚 compile 0m 18s master passed
+1 💚 shadedjars 4m 4s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 15s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 44s the patch passed
+1 💚 compile 0m 17s the patch passed
+1 💚 javac 0m 17s the patch passed
+1 💚 shadedjars 4m 0s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 17s hbase-common generated 0 new + 4 unchanged - 10 fixed = 4 total (was 14)
_ Other Tests _
+1 💚 unit 1m 44s hbase-common in the patch passed.
+1 💚 unit 211m 24s hbase-server in the patch passed.
232m 7s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #4645
Optional Tests javac javadoc unit shadedjars compile
uname Linux e9f4b5cc7cd9 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 master / ca545c4
Default Java AdoptOpenJDK-11.0.10+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/testReport/
Max. process+thread count 2435 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/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 22s 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 _
_ master Compile Tests _
+1 💚 mvninstall 3m 29s master passed
+1 💚 compile 0m 17s master passed
+1 💚 shadedjars 4m 28s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 16s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 41s the patch passed
+1 💚 compile 0m 20s the patch passed
+1 💚 javac 0m 20s the patch passed
+1 💚 shadedjars 4m 47s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 13s the patch passed
_ Other Tests _
+1 💚 unit 1m 34s hbase-common in the patch passed.
-1 ❌ unit 227m 8s hbase-server in the patch failed.
249m 40s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #4645
Optional Tests javac javadoc unit shadedjars compile
uname Linux 4501a77712ae 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 master / ca545c4
Default Java AdoptOpenJDK-1.8.0_282-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/testReport/
Max. process+thread count 2352 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/2/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.

@apurtell
Copy link
Contributor Author

apurtell commented Jul 27, 2022

hbase-server results here are probably not related, but it is a bit hard to say.

There are two tracing related flakes. /cc @ndimiduk

There was a timed out test, but I don't know which one, but I did disable a known hang just today so another run might be cleaner.

@apurtell
Copy link
Contributor Author

Let me rebase and push to trigger another run.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 27s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s 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.
_ master Compile Tests _
+1 💚 mvninstall 2m 11s master passed
+1 💚 compile 0m 29s master passed
+1 💚 checkstyle 0m 12s master passed
+1 💚 spotless 0m 44s branch has no errors when running spotless:check.
+1 💚 spotbugs 0m 25s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 13s the patch passed
+1 💚 compile 0m 29s the patch passed
+1 💚 javac 0m 29s hbase-common generated 0 new + 0 unchanged - 151 fixed = 0 total (was 151)
-0 ⚠️ checkstyle 0m 11s hbase-common: The patch generated 3 new + 145 unchanged - 13 fixed = 148 total (was 158)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 11m 53s Patch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚 spotless 0m 43s patch has no errors when running spotless:check.
+1 💚 spotbugs 0m 31s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 7s The patch does not generate ASF License warnings.
27m 23s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/3/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #4645
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux ec2ccf80b0cd 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / a3eeab8
Default Java AdoptOpenJDK-1.8.0_282-b08
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/3/artifact/yetus-general-check/output/diff-checkstyle-hbase-common.txt
Max. process+thread count 64 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 32s 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 _
_ master Compile Tests _
+1 💚 mvninstall 2m 15s master passed
+1 💚 compile 0m 13s master passed
+1 💚 shadedjars 3m 59s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 12s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 15s the patch passed
+1 💚 compile 0m 13s the patch passed
+1 💚 javac 0m 13s the patch passed
+1 💚 shadedjars 4m 0s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 12s the patch passed
_ Other Tests _
+1 💚 unit 1m 22s hbase-common in the patch passed.
+1 💚 unit 199m 54s hbase-server in the patch passed.
217m 45s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/3/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #4645
Optional Tests javac javadoc unit shadedjars compile
uname Linux 355712537a20 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 master / a3eeab8
Default Java AdoptOpenJDK-1.8.0_282-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/3/testReport/
Max. process+thread count 2647 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/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.

@ndimiduk
Copy link
Member

ndimiduk commented Aug 1, 2022

hbase-server results here are probably not related, but it is a bit hard to say.

There are two tracing related flakes. /cc @ndimiduk

There was a timed out test, but I don't know which one, but I did disable a known hang just today so another run might be cleaner.

Thanks for pointing these out, I see the logs.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 49s 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.
_ master Compile Tests _
+1 💚 mvninstall 2m 37s master passed
+1 💚 compile 0m 31s master passed
+1 💚 checkstyle 0m 13s master passed
+1 💚 spotless 0m 43s branch has no errors when running spotless:check.
+1 💚 spotbugs 0m 28s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 11s the patch passed
+1 💚 compile 0m 29s the patch passed
+1 💚 javac 0m 29s hbase-common generated 0 new + 0 unchanged - 151 fixed = 0 total (was 151)
-0 ⚠️ checkstyle 0m 11s hbase-common: The patch generated 3 new + 145 unchanged - 13 fixed = 148 total (was 158)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 12m 2s Patch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚 spotless 0m 42s patch has no errors when running spotless:check.
+1 💚 spotbugs 0m 31s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 8s The patch does not generate ASF License warnings.
27m 2s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/4/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #4645
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux b7b7482dd777 5.4.0-1081-aws #88~18.04.1-Ubuntu SMP Thu Jun 23 16:29:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / 486d19e
Default Java AdoptOpenJDK-1.8.0_282-b08
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/4/artifact/yetus-general-check/output/diff-checkstyle-hbase-common.txt
Max. process+thread count 64 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/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.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 59s Docker mode activated.
-0 ⚠️ 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 _
+1 💚 mvninstall 2m 45s master passed
+1 💚 compile 0m 17s master passed
+1 💚 shadedjars 3m 46s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 16s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 36s the patch passed
+1 💚 compile 0m 17s the patch passed
+1 💚 javac 0m 17s the patch passed
+1 💚 shadedjars 3m 48s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 16s hbase-common generated 0 new + 4 unchanged - 10 fixed = 4 total (was 14)
_ Other Tests _
+1 💚 unit 1m 44s hbase-common in the patch passed.
+1 💚 unit 210m 16s hbase-server in the patch passed.
228m 46s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/4/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #4645
Optional Tests javac javadoc unit shadedjars compile
uname Linux 936d9b40f4a7 5.4.0-122-generic #138-Ubuntu SMP Wed Jun 22 15:00:31 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / 486d19e
Default Java AdoptOpenJDK-11.0.10+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/4/testReport/
Max. process+thread count 2470 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/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 6s 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 _
_ master Compile Tests _
+1 💚 mvninstall 3m 58s master passed
+1 💚 compile 0m 16s master passed
+1 💚 shadedjars 4m 40s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 18s master passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 49s the patch passed
+1 💚 compile 0m 23s the patch passed
+1 💚 javac 0m 23s the patch passed
+1 💚 shadedjars 4m 48s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 13s the patch passed
_ Other Tests _
+1 💚 unit 1m 37s hbase-common in the patch passed.
-1 ❌ unit 206m 47s hbase-server in the patch failed.
228m 39s
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/4/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #4645
Optional Tests javac javadoc unit shadedjars compile
uname Linux 6bec8295ea6a 5.4.0-1081-aws #88~18.04.1-Ubuntu SMP Thu Jun 23 16:29:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision master / 486d19e
Default Java AdoptOpenJDK-1.8.0_282-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/4/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/4/testReport/
Max. process+thread count 3297 (vs. ulimit of 30000)
modules C: hbase-common U: hbase-common
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4645/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.

@@ -2345,7 +2342,7 @@ public static void setTimestamp(Cell cell, long ts) throws IOException {
}

/**
* Sets the given timestamp to the cell. n * @param ts buffer containing the timestamp value
Copy link
Member

Choose a reason for hiding this comment

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

I think that these comment lines starting with n are left-overs from the auto-formatting tool getting confused by newline characters.

@@ -519,6 +519,7 @@ protected OffheapDecodedExtendedCell(ByteBuffer keyBuffer, short rowLength, int
}

@Override
@SuppressWarnings("ByteBufferBackingArray")
Copy link
Member

Choose a reason for hiding this comment

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

I agree with ErrorProne that this use of a ByteBuffer is problematic. We're leaving it to the caller to perform bounds checking but they don't have the underlying keyBuffer.

Keep the warnings so that we don't lose track of this issue?

@@ -31,6 +31,7 @@
* The values in the enum appear in the order they appear in a version 2 HFile.
*/
@InterfaceAudience.Private
@SuppressWarnings("ImmutableEnumChecker")
Copy link
Member

Choose a reason for hiding this comment

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

Does the warning specify the point of mutability? A quick scan here and I don't see any state mutations.

Copy link
Contributor

Choose a reason for hiding this comment

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

I guess it is because the 'magic' field. It is a byte array, the content can be changed at runtime.

@@ -38,6 +38,7 @@
*/
@InterfaceAudience.Private
@InterfaceStability.Stable
@SuppressWarnings({ "unchecked", "rawtypes", "hiding", "TypeParameterShadowing" })
Copy link
Member

Choose a reason for hiding this comment

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

Yikes!

@@ -58,6 +58,7 @@
@edu.umd.cs.findbugs.annotations.SuppressWarnings(
value = "EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS",
justification = "It has been like this forever")
@SuppressWarnings("MixedMutabilityReturnType")
Copy link
Member

Choose a reason for hiding this comment

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

This method returns both mutable and immutable collections or maps from different paths. This may be confusing for users of the method.

Yeah, that's a fair description.

// using linux bash commands to retrieve info
Process p = Runtime.getRuntime()
.exec(new String[] { "bash", "-c", "ls /proc/" + pidhost[0] + "/fdinfo | wc -l" });
.exec(new String[] { "bash", "-c", "ls /proc/" + pidhost.next() + "/fdinfo | wc -l" });
Copy link
Member

Choose a reason for hiding this comment

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

Should we be looking under /proc/self instead of parsing the pid?

Copy link
Contributor

Choose a reason for hiding this comment

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

This could be done as a separated issue, not an error prone related problem.

@ndimiduk
Copy link
Member

Thanks for putting time into this cleanup, @apurtell .

Copy link
Contributor

@Apache9 Apache9 left a comment

Choose a reason for hiding this comment

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

No blocker then. Let's get this merged first.

Thanks @apurtell for taking care of this!

private byte[] keyOnlyBuffer;
private short rowLength;
private int familyOffset;
private byte familyLength;
private int qualifierOffset;
private int qualifierLength;
private long timestamp;
private long timeStamp;
Copy link
Contributor

Choose a reason for hiding this comment

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

If we do not change the public method declaration I think it is fine. Can discuss this later.

@@ -31,6 +31,7 @@
* The values in the enum appear in the order they appear in a version 2 HFile.
*/
@InterfaceAudience.Private
@SuppressWarnings("ImmutableEnumChecker")
Copy link
Contributor

Choose a reason for hiding this comment

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

I guess it is because the 'magic' field. It is a byte array, the content can be changed at runtime.

// using linux bash commands to retrieve info
Process p = Runtime.getRuntime()
.exec(new String[] { "bash", "-c", "ls /proc/" + pidhost[0] + "/fdinfo | wc -l" });
.exec(new String[] { "bash", "-c", "ls /proc/" + pidhost.next() + "/fdinfo | wc -l" });
Copy link
Contributor

Choose a reason for hiding this comment

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

This could be done as a separated issue, not an error prone related problem.

try {
for (Cell k : set) {
assertTrue("count=" + count + ", " + k.toString(), count++ == k.getTimestamp());
for (Cell k : set) {
Copy link
Contributor

Choose a reason for hiding this comment

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

Could try to use assertThrows in the future. Not a blocker.

expectedAssert(() -> testReadAndWrite(array, 4096, cap - 4096 + 1, (byte) 16));

// XXX: These cases were apparently expected to assert but expectedAssert() was
Copy link
Contributor

Choose a reason for hiding this comment

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

Oops.

@Apache9 Apache9 merged commit fbe3b90 into apache:master Aug 21, 2022
Apache9 pushed a commit that referenced this pull request Aug 21, 2022
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit fbe3b90)

Conflicts:
	hbase-common/src/main/java/org/apache/hadoop/hbase/CellUtil.java
	hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValueUtil.java
	hbase-common/src/main/java/org/apache/hadoop/hbase/ServerName.java
	hbase-common/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupInfo.java
	hbase-common/src/main/java/org/apache/hadoop/hbase/util/Bytes.java
	hbase-common/src/test/java/org/apache/hadoop/hbase/io/crypto/TestKeyStoreKeyProvider.java
	hbase-common/src/test/java/org/apache/hadoop/hbase/types/TestOrderedFloat32.java
Apache9 pushed a commit that referenced this pull request Aug 21, 2022
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit fbe3b90)

Conflicts:
	hbase-common/src/main/java/org/apache/hadoop/hbase/CellUtil.java
	hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValueUtil.java
	hbase-common/src/main/java/org/apache/hadoop/hbase/ServerName.java
	hbase-common/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupInfo.java
	hbase-common/src/main/java/org/apache/hadoop/hbase/util/Bytes.java
	hbase-common/src/test/java/org/apache/hadoop/hbase/io/crypto/TestKeyStoreKeyProvider.java
	hbase-common/src/test/java/org/apache/hadoop/hbase/types/TestOrderedFloat32.java
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants