Skip to content

HBASE-28468: Integrate the data-tiering logic into cache evictions. #5829

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

Merged
merged 6 commits into from
Apr 25, 2024

Conversation

jhungund
Copy link
Contributor

@jhungund jhungund commented Apr 15, 2024

As a part of cache blocks eviction when the cache is full,
the data-tiering logic is integrated into the freeSpace code path
to identify the cold data files and evict the blocks associated with
those files.

The list of files is traversed to identify the cold files based
on the hot-data-age configuration and also the max timestamp associated
with the files.

The blocks associated with those cold files are evicted first and then
the existing logic of LFU blocks is executed to further evict the blocks.

@@ -934,6 +936,27 @@ void freeSpace(final String why) {
}
try {
freeInProgress = true;

// Fetch the file names from the backing map.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

The main logic is to rely on the file names. Fetch the file names from the block cache keys.
Pass the list to a new DataTieringManager API to detect which of these files are cold-files and return the list of cold files.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We can use the BlocksByFile instead of BackingMap if it seems more efficient.

@jhungund jhungund force-pushed the HBASE-28468_Alternative branch from 2fa96c5 to 5998601 Compare April 15, 2024 09:28
@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 14s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 59s HBASE-28463 passed
+1 💚 compile 2m 30s HBASE-28463 passed
+1 💚 checkstyle 0m 37s HBASE-28463 passed
+1 💚 spotless 0m 44s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 31s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 46s the patch passed
+1 💚 compile 2m 31s the patch passed
+1 💚 javac 2m 31s the patch passed
-0 ⚠️ checkstyle 0m 37s hbase-server: The patch generated 4 new + 7 unchanged - 0 fixed = 11 total (was 7)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 4m 54s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 37s patch has 62 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 1m 40s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 12s The patch does not generate ASF License warnings.
27m 58s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux fc490c742002 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 83 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.3
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@jhungund jhungund force-pushed the HBASE-28468_Alternative branch from 5998601 to 2f59db2 Compare April 15, 2024 10:57
@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 3m 11s 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-28463 Compile Tests _
+1 💚 mvninstall 3m 3s HBASE-28463 passed
+1 💚 compile 0m 46s HBASE-28463 passed
+1 💚 shadedjars 5m 37s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 53s the patch passed
+1 💚 compile 0m 45s the patch passed
+1 💚 javac 0m 45s the patch passed
+1 💚 shadedjars 5m 34s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 23s the patch passed
_ Other Tests _
-1 ❌ unit 231m 25s hbase-server in the patch failed.
258m 57s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5829
Optional Tests javac javadoc unit shadedjars compile
uname Linux df1fb2ce3a1d 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/testReport/
Max. process+thread count 4528 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/console
versions git=2.34.1 maven=3.8.6
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 32s 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 _
_ HBASE-28463 Compile Tests _
+1 💚 mvninstall 2m 39s HBASE-28463 passed
+1 💚 compile 0m 42s HBASE-28463 passed
+1 💚 shadedjars 5m 7s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 28s the patch passed
+1 💚 compile 0m 43s the patch passed
+1 💚 javac 0m 43s the patch passed
+1 💚 shadedjars 5m 12s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 25s the patch passed
_ Other Tests _
-1 ❌ unit 312m 52s hbase-server in the patch failed.
336m 58s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
Optional Tests javac javadoc unit shadedjars compile
uname Linux eefdda071760 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/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-5829/1/testReport/
Max. process+thread count 4389 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/1/console
versions git=2.34.1 maven=3.8.6
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 12s 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.
_ HBASE-28463 Compile Tests _
+1 💚 mvninstall 3m 2s HBASE-28463 passed
+1 💚 compile 2m 29s HBASE-28463 passed
+1 💚 checkstyle 0m 39s HBASE-28463 passed
+1 💚 spotless 0m 44s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 32s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 41s the patch passed
+1 💚 compile 2m 28s the patch passed
+1 💚 javac 2m 28s the patch passed
-0 ⚠️ checkstyle 0m 36s hbase-server: The patch generated 5 new + 14 unchanged - 0 fixed = 19 total (was 14)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 4m 48s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 36s patch has 65 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 1m 37s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 12s The patch does not generate ASF License warnings.
27m 43s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux 54593e582afc 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 81 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.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 39s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 59s HBASE-28463 passed
+1 💚 compile 0m 53s HBASE-28463 passed
+1 💚 shadedjars 5m 19s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 28s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 47s the patch passed
+1 💚 compile 0m 50s the patch passed
+1 💚 javac 0m 50s the patch passed
+1 💚 shadedjars 5m 14s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s the patch passed
_ Other Tests _
-1 ❌ unit 260m 43s hbase-server in the patch failed.
285m 31s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5829
Optional Tests javac javadoc unit shadedjars compile
uname Linux 45e08ef2a7dd 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/testReport/
Max. process+thread count 5897 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/console
versions git=2.34.1 maven=3.8.6
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 40s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 42s HBASE-28463 passed
+1 💚 compile 0m 43s HBASE-28463 passed
+1 💚 shadedjars 5m 13s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 27s the patch passed
+1 💚 compile 0m 42s the patch passed
+1 💚 javac 0m 42s the patch passed
+1 💚 shadedjars 5m 7s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 24s the patch passed
_ Other Tests _
-1 ❌ unit 275m 33s hbase-server in the patch failed.
299m 10s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
Optional Tests javac javadoc unit shadedjars compile
uname Linux c30780401608 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/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-5829/2/testReport/
Max. process+thread count 4521 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/2/console
versions git=2.34.1 maven=3.8.6
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@jhungund jhungund force-pushed the HBASE-28468_Alternative branch 2 times, most recently from 47ec22d to 836a70f Compare April 18, 2024 12:19
@jhungund jhungund changed the title Alternative solution for data Tiering integration into cache evictions. HBASE-28468: Integrate the data-tiering logic into cache evictions. Apr 18, 2024
@jhungund jhungund force-pushed the HBASE-28468_Alternative branch from 836a70f to a357c63 Compare April 18, 2024 12:23
@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 5s 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-28463 Compile Tests _
+1 💚 mvninstall 4m 43s HBASE-28463 passed
+1 💚 compile 4m 48s HBASE-28463 passed
+1 💚 checkstyle 0m 59s HBASE-28463 passed
+1 💚 spotless 1m 23s branch has no errors when running spotless:check.
+1 💚 spotbugs 2m 46s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 56s the patch passed
+1 💚 compile 3m 35s the patch passed
+1 💚 javac 3m 35s the patch passed
-0 ⚠️ checkstyle 0m 57s hbase-server: The patch generated 19 new + 14 unchanged - 0 fixed = 33 total (was 14)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 5m 58s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 53s patch has 66 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 2m 37s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 15s The patch does not generate ASF License warnings.
43m 10s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux 6ad7ab8b4f22 5.4.0-176-generic #196-Ubuntu SMP Fri Mar 22 16:46:39 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 82 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.3
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

Copy link
Contributor

@wchevreuil wchevreuil left a comment

Choose a reason for hiding this comment

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

Overall, I like this approach better than the previous proposed in PR #5826. The only con is the overhead in figuring out the "cold" files within the eviction process. As discussed internally, we could add an extra global config for when data tiering manager should be considered.

Additional ask I have is to add a UT for this modified behaviour in freespace(). We should test that eviction correctly picks blocks for cold files but leave the hot ones.

if (!maxTimestamp.isPresent()) {
// We could throw from here, But we are already in the critical code-path
// of freeing space. Hence, we can ignore that file for now
// Or do we want to include it?
Copy link
Contributor

Choose a reason for hiding this comment

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

That's fine for me. Can we add a debug/trace log?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ack!

@@ -935,6 +937,7 @@ void freeSpace(final String why) {
}
try {
freeInProgress = true;

Copy link
Contributor

Choose a reason for hiding this comment

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

nit: please avoid unnecessary new lines.

Comment on lines 984 to 985
// List<BlockCacheKey> coldBlocks = new ArrayList<>();

Copy link
Contributor

Choose a reason for hiding this comment

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

nit: please remove commented code.

@@ -980,9 +991,18 @@ void freeSpace(final String why) {
BucketEntryGroup bucketMemory =
new BucketEntryGroup(bytesToFreeWithExtra, blockSize, getPartitionSize(memoryFactor));

long bytesFreed = 0;

Copy link
Contributor

Choose a reason for hiding this comment

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

nit: remove new line.

// Scan entire map putting bucket entry into appropriate bucket entry
// group
for (Map.Entry<BlockCacheKey, BucketEntry> bucketEntryWithKey : backingMap.entrySet()) {

if (coldFiles.containsKey(bucketEntryWithKey.getKey().getHfileName())) {
//coldBlocks.add(bucketEntryWithKey.getKey());
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: remove commented code.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ack!

if (coldFiles.containsKey(bucketEntryWithKey.getKey().getHfileName())) {
//coldBlocks.add(bucketEntryWithKey.getKey());
bytesFreed += bucketEntryWithKey.getValue().getLength();
evictBlock(bucketEntryWithKey.getKey());
Copy link
Contributor

Choose a reason for hiding this comment

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

We are on an eviction process, this call would miss the proper stats counting. Also, we should care about ref counts, so better use evictBucketEntryIfNoRpcReferenced for this eviction.

Also here we are evicting all blocks for files considered cold. Shouldn't we do it only until we reach the bytesToFreeWithoutExtramark?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

You mean we need to evict these cold file blocks even before the calculations for bytesToFreeWithoutExtra? That will require one additional traversal of backingMap. I will incorporate this change and we can take a look if that looks ok.

Copy link
Contributor

Choose a reason for hiding this comment

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

No, that not what I meant. You already have bytesToFreeWithExtra calculated in line #983 and you are computing bytesFreed. Once bytesFreed reached bytesToFreeWithExtra value, you still want to evict the cold files or should we just interrupt the loop?


if (coldFiles.containsKey(bucketEntryWithKey.getKey().getHfileName())) {
//coldBlocks.add(bucketEntryWithKey.getKey());
bytesFreed += bucketEntryWithKey.getValue().getLength();
Copy link
Contributor

Choose a reason for hiding this comment

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

We should only account for this once the eviction was indeed successfull.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ack!

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 45s 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-28463 Compile Tests _
+1 💚 mvninstall 3m 23s HBASE-28463 passed
+1 💚 compile 0m 51s HBASE-28463 passed
+1 💚 shadedjars 6m 34s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 33s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 16s the patch passed
+1 💚 compile 0m 53s the patch passed
+1 💚 javac 0m 53s the patch passed
+1 💚 shadedjars 5m 55s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s the patch passed
_ Other Tests _
-1 ❌ unit 310m 37s hbase-server in the patch failed.
339m 3s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux 83a9678c4ce5 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/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-5829/4/testReport/
Max. process+thread count 4948 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/console
versions git=2.34.1 maven=3.8.6
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 15s 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-28463 Compile Tests _
+1 💚 mvninstall 3m 22s HBASE-28463 passed
+1 💚 compile 0m 52s HBASE-28463 passed
+1 💚 shadedjars 6m 18s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 31s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 20s the patch passed
+1 💚 compile 0m 55s the patch passed
+1 💚 javac 0m 55s the patch passed
+1 💚 shadedjars 5m 41s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 27s the patch passed
_ Other Tests _
-1 ❌ unit 341m 47s hbase-server in the patch failed.
369m 6s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux c3c83ad34e25 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/testReport/
Max. process+thread count 4771 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/4/console
versions git=2.34.1 maven=3.8.6
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@jhungund jhungund force-pushed the HBASE-28468_Alternative branch 3 times, most recently from 0d9e81d to 3a8c0dc Compare April 19, 2024 10:43
@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 15s 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-28463 Compile Tests _
+1 💚 mvninstall 4m 18s HBASE-28463 passed
+1 💚 compile 3m 13s HBASE-28463 passed
+1 💚 checkstyle 0m 37s HBASE-28463 passed
+1 💚 spotless 0m 46s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 51s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 50s the patch passed
+1 💚 compile 3m 18s the patch passed
+1 💚 javac 3m 18s the patch passed
-0 ⚠️ checkstyle 0m 45s hbase-server: The patch generated 20 new + 14 unchanged - 0 fixed = 34 total (was 14)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 5m 36s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 1m 4s patch has 66 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 3m 3s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 20s The patch does not generate ASF License warnings.
38m 55s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux afc6055f5c71 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 78 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.3
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

if (coldFiles != null
&& coldFiles.containsKey(bucketEntryWithKey.getKey().getHfileName())) {
int freedBlockSize = bucketEntryWithKey.getValue().getLength();
evictBlockIfNoRpcReferenced(bucketEntryWithKey.getKey());
Copy link
Contributor

Choose a reason for hiding this comment

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

evictBlockIfNoRpcReferenced returns a boolean indicating whether the eviction was successful or not. We should check that boolean in orther to decide if we should increment bytesFreed.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ack!

if (coldFiles.containsKey(bucketEntryWithKey.getKey().getHfileName())) {
//coldBlocks.add(bucketEntryWithKey.getKey());
bytesFreed += bucketEntryWithKey.getValue().getLength();
evictBlock(bucketEntryWithKey.getKey());
Copy link
Contributor

Choose a reason for hiding this comment

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

No, that not what I meant. You already have bytesToFreeWithExtra calculated in line #983 and you are computing bytesFreed. Once bytesFreed reached bytesToFreeWithExtra value, you still want to evict the cold files or should we just interrupt the loop?

Comment on lines 267 to 294
// Verify that the bucket cache contains 4 blocks.
assertEquals(3, bucketCache.getBackingMap().keySet().size());
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: comment mismatching the code.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ack!

Comment on lines 262 to 263
while (!(bucketCache.getBackingMap().containsKey(key))) {
Thread.sleep(100);
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: use Waiter.waitFor

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ack!

Comment on lines 275 to 277
while (!(bucketCache.getBackingMap().containsKey(newKey))) {
Thread.sleep(100);
}
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: use Waiter.waitFor

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ack!

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 34s 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 _
_ HBASE-28463 Compile Tests _
+1 💚 mvninstall 4m 12s HBASE-28463 passed
+1 💚 compile 1m 1s HBASE-28463 passed
+1 💚 shadedjars 6m 35s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 30s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 16s the patch passed
+1 💚 compile 0m 59s the patch passed
+1 💚 javac 0m 59s the patch passed
+1 💚 shadedjars 6m 24s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s the patch passed
_ Other Tests _
-1 ❌ unit 267m 12s hbase-server in the patch failed.
295m 50s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux 6149f488d587 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/testReport/
Max. process+thread count 4743 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/console
versions git=2.34.1 maven=3.8.6
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 42s 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-28463 Compile Tests _
+1 💚 mvninstall 3m 21s HBASE-28463 passed
+1 💚 compile 0m 58s HBASE-28463 passed
+1 💚 shadedjars 6m 33s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 30s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 54s the patch passed
+1 💚 compile 0m 50s the patch passed
+1 💚 javac 0m 50s the patch passed
+1 💚 shadedjars 6m 2s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 30s the patch passed
_ Other Tests _
-1 ❌ unit 294m 32s hbase-server in the patch failed.
321m 45s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux da369e1e1e78 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/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-5829/5/testReport/
Max. process+thread count 4608 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/5/console
versions git=2.34.1 maven=3.8.6
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 16s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 50s HBASE-28463 passed
+1 💚 compile 2m 29s HBASE-28463 passed
+1 💚 checkstyle 0m 37s HBASE-28463 passed
+1 💚 spotless 0m 43s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 39s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 45s the patch passed
+1 💚 compile 2m 28s the patch passed
+1 💚 javac 2m 28s the patch passed
-0 ⚠️ checkstyle 0m 36s hbase-server: The patch generated 22 new + 14 unchanged - 0 fixed = 36 total (was 14)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 4m 49s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 37s patch has 66 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 1m 40s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 11s The patch does not generate ASF License warnings.
27m 32s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/6/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux 8b3a63ff20c5 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/6/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/6/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 80 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/6/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.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 33s 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-28463 Compile Tests _
+1 💚 mvninstall 3m 38s HBASE-28463 passed
+1 💚 compile 0m 54s HBASE-28463 passed
+1 💚 shadedjars 6m 24s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 30s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 34s the patch passed
+1 💚 compile 0m 58s the patch passed
+1 💚 javac 0m 58s the patch passed
+1 💚 shadedjars 6m 47s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 37s the patch passed
_ Other Tests _
+1 💚 unit 269m 9s hbase-server in the patch passed.
297m 27s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/6/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux 62c250f92b34 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / b7bb8b9
Default Java Eclipse Adoptium-11.0.17+8
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/6/testReport/
Max. process+thread count 4485 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/6/console
versions git=2.34.1 maven=3.8.6
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@jhungund jhungund requested a review from wchevreuil April 22, 2024 13:48
@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 12s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 51s HBASE-28463 passed
+1 💚 compile 2m 31s HBASE-28463 passed
+1 💚 checkstyle 0m 36s HBASE-28463 passed
+1 💚 spotless 0m 42s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 32s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 45s the patch passed
+1 💚 compile 2m 29s the patch passed
+1 💚 javac 2m 29s the patch passed
-0 ⚠️ checkstyle 0m 37s hbase-server: The patch generated 19 new + 14 unchanged - 0 fixed = 33 total (was 14)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 4m 57s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 36s patch has 65 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 1m 40s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 11s The patch does not generate ASF License warnings.
27m 39s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux 9de76c7a970c 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 81 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.3
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

Adjusted the log messages and add another unit test.
Also applied spotless fixes.

Change-Id: I0c6004b9dfe6ed7b169b8f1b6b8e7f1f38a9e591
@jhungund jhungund force-pushed the HBASE-28468_Alternative branch from 107d9f2 to e5aaa04 Compare April 22, 2024 15:31
@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 38s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 36s HBASE-28463 passed
+1 💚 compile 0m 42s HBASE-28463 passed
+1 💚 shadedjars 5m 10s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 28s the patch passed
+1 💚 compile 0m 42s the patch passed
+1 💚 javac 0m 42s the patch passed
+1 💚 shadedjars 5m 10s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 24s the patch passed
_ Other Tests _
-1 ❌ unit 246m 56s hbase-server in the patch failed.
269m 52s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux 98ce70616485 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/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-5829/8/testReport/
Max. process+thread count 4411 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/console
versions git=2.34.1 maven=3.8.6
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 35s 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-28463 Compile Tests _
+1 💚 mvninstall 3m 52s HBASE-28463 passed
+1 💚 compile 1m 6s HBASE-28463 passed
+1 💚 shadedjars 6m 54s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 31s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 41s the patch passed
+1 💚 compile 1m 0s the patch passed
+1 💚 javac 1m 0s the patch passed
+1 💚 shadedjars 6m 34s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 27s the patch passed
_ Other Tests _
-1 ❌ unit 270m 9s hbase-server in the patch failed.
299m 41s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux c0c985c7df5d 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/testReport/
Max. process+thread count 4635 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/8/console
versions git=2.34.1 maven=3.8.6
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 17s 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-28463 Compile Tests _
+1 💚 mvninstall 3m 47s HBASE-28463 passed
+1 💚 compile 2m 40s HBASE-28463 passed
+1 💚 checkstyle 0m 45s HBASE-28463 passed
+1 💚 spotless 0m 47s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 36s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 43s the patch passed
+1 💚 compile 3m 32s the patch passed
+1 💚 javac 3m 32s the patch passed
-0 ⚠️ checkstyle 0m 43s hbase-server: The patch generated 1 new + 14 unchanged - 0 fixed = 15 total (was 14)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 6m 12s Patch does not cause any errors with Hadoop 3.3.6.
+1 💚 spotless 0m 43s patch has no errors when running spotless:check.
+1 💚 spotbugs 1m 39s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 10s The patch does not generate ASF License warnings.
33m 12s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/9/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux 6d01abe693f9 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/9/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
Max. process+thread count 82 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/9/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.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 25s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 44s HBASE-28463 passed
+1 💚 compile 0m 40s HBASE-28463 passed
+1 💚 shadedjars 5m 47s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 24s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 27s the patch passed
+1 💚 compile 0m 39s the patch passed
+1 💚 javac 0m 39s the patch passed
+1 💚 shadedjars 5m 43s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 23s the patch passed
_ Other Tests _
+1 💚 unit 239m 7s hbase-server in the patch passed.
262m 40s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/9/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux f3e44c8b0fb9 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Temurin-1.8.0_352-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/9/testReport/
Max. process+thread count 5372 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/9/console
versions git=2.34.1 maven=3.8.6
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

Comment on lines 296 to 307
// Add an additional block into cache with hot data which should trigger the eviction
BlockCacheKey newKey = new BlockCacheKey(hStoreFiles.get(2).getPath(), 0, true, BlockType.DATA);
CacheTestUtils.HFileBlockPair[] newBlock = CacheTestUtils.generateHFileBlocks(8192, 1);

bucketCache.cacheBlock(newKey, newBlock[0].getBlock());
Waiter.waitFor(defaultConf, 1000000, 100,
() -> (bucketCache.getBackingMap().containsKey(newKey)));

// Verify that the bucket cache now contains 2 hot blocks blocks only.
// Both cold blocks of 8KB will be evicted to make room for 1 block of 8KB + an additional
// space.
validateBlocks(bucketCache.getBackingMap().keySet(), 2, 2, 0);
Copy link
Contributor

Choose a reason for hiding this comment

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

Why an eviction is expected here? Cache capacity is 64KB, the cache already had three blocks of 8KB and we are now adding a fourth 8KB size block, so total occupancy would be at 32KB, which should be ok, no?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

During my debugging I found that eviction does get triggered. However, I did reduce the size to 40K and the eviction still triggers.

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah, we had reviewed this internally, not at all an issue. It's due to the internals of BucketAllocator when calculating buckets limits.

Comment on lines 289 to 291
Waiter.waitFor(defaultConf, 1000000, 100,
() -> (bucketCache.getBackingMap().containsKey(key)));
}
Copy link
Contributor

Choose a reason for hiding this comment

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

Should we fail faster? Why this timeout needs to be so long?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, you are right. Let me bring it down to 10 secs timeout. I had set it to a high value while debugging it.

Comment on lines 347 to 354
// Add an additional block into cache with hot data which should trigger the eviction
BlockCacheKey newKey = new BlockCacheKey(hStoreFiles.get(2).getPath(), 0, true, BlockType.DATA);
CacheTestUtils.HFileBlockPair[] newBlock = CacheTestUtils.generateHFileBlocks(8192, 1);

bucketCache.cacheBlock(newKey, newBlock[0].getBlock());
Waiter.waitFor(defaultConf, 1000000, 100,
() -> (bucketCache.getBackingMap().containsKey(newKey)));

Copy link
Contributor

Choose a reason for hiding this comment

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

Similar to previous test. Why do we expect evictions when cache is less than 50% usage?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I do see the eviction getting triggered.

Comment on lines +370 to +371
BucketCache bucketCache = new BucketCache("file:" + testDir + "/bucket.cache", capacitySize,
8192, bucketSizes, writeThreads, writerQLen, testDir + "/bucket.persistence",
Copy link
Contributor

Choose a reason for hiding this comment

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

The comment says it's creating a lower capacity cache, yet it's using same 64KB as in previous tests.

Comment on lines 395 to 401
// Add an additional block which should evict the only cold block with an additional hot block.
BlockCacheKey newKey = new BlockCacheKey(hStoreFiles.get(2).getPath(), 0, true, BlockType.DATA);
CacheTestUtils.HFileBlockPair[] newBlock = CacheTestUtils.generateHFileBlocks(8192, 1);

bucketCache.cacheBlock(newKey, newBlock[0].getBlock());
Waiter.waitFor(defaultConf, 1000000, 100,
() -> (bucketCache.getBackingMap().containsKey(newKey)));
Copy link
Contributor

Choose a reason for hiding this comment

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

Similar to previous tests. We expect evictions at less than 50% usage?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I did see the evictions being triggered. I have reduced the bucket cache size to 40K bytes.

Copy link
Contributor Author

@jhungund jhungund Apr 24, 2024

Choose a reason for hiding this comment

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

Hi @wchevreuil, I varied the bucket cache sizes and checked the bucket cache numbers (capacity, free space, used space) at various stages in the unit test. Below are my observations.
For a bucket cache with 40K byes capacity:
At the start: Bucket Max Size: 40960, Current size: 0, Data size: 0, free size: 36864, Block Count: 0
After 1 block: Bucket Max Size: 40960, Current size: 9216, Data size: 8213, free size: 27648, Block Count:1
After 2 block: Bucket Max Size: 40960, Current size: 18432, Data size: 16426, free size: 18432, Block Count:2
After 3 block: Bucket Max Size: 40960, Current size: 27648, Data size: 24639, free size: 9216, Block Count:3

Eviction gets triggered for 4th block addition.
For a bucket cache with 64K capacity:
At the start: Bucket Max Size: 65536, Current size: 0, Data size: 0, free size: 36864, Block Count: 0
After 1 block: Bucket Max Size: 65536, Current size: 9216, Data size: 8213, free size: 27648, Block Count:1
After 2 block: Bucket Max Size: 65536, Current size: 18432, Data size: 16426, free size: 18432, Block Count:2
After 3 block: Bucket Max Size: 65536, Current size: 27648, Data size: 24639, free size: 9216, Block Count: 3

Eviction gets triggered for 4th block addition.

For a bucket cache with 72K capacity:
At the start: Bucket Max Size: 73728, Current size: 0, Data size: 0, free size: 73728, Block Count: 0
After 1 block: Bucket Max Size: 73728, Current size: 9216, Data size: 8213, free size: 64512, Block Count: 1
After 2 block: Bucket Max Size: 73728, Current size: 18432, Data size: 16426,free size: 55296, Block Count: 2
After 3 block: Bucket Max Size: 73728, Current size: 27648, Data size: 24639, free size: 46080,Block Count:3
Eviction does not get triggered for 4th Block addition.

Hence, as you can see that inspite of varying the bucket cache sizes between 40K and 64K, the free space available is only 36K. Hence, the eviction is triggered.

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 12s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 45s HBASE-28463 passed
+1 💚 compile 2m 32s HBASE-28463 passed
+1 💚 checkstyle 0m 37s HBASE-28463 passed
+1 💚 spotless 0m 42s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 32s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 45s the patch passed
+1 💚 compile 2m 30s the patch passed
+1 💚 javac 2m 30s the patch passed
-0 ⚠️ checkstyle 0m 37s hbase-server: The patch generated 1 new + 14 unchanged - 0 fixed = 15 total (was 14)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 4m 45s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 38s patch has 43 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 1m 37s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 10s The patch does not generate ASF License warnings.
27m 38s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux fc54dbb65055 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 80 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.3
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

Also adjust the timeouts.

Change-Id: I8e3e2132977514b49a9d3ad491c66680a71e5c31
@jhungund jhungund force-pushed the HBASE-28468_Alternative branch from 79fc1ec to 0444e84 Compare April 23, 2024 12:54
@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 29s 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 _
_ HBASE-28463 Compile Tests _
+1 💚 mvninstall 3m 12s HBASE-28463 passed
+1 💚 compile 0m 45s HBASE-28463 passed
+1 💚 shadedjars 5m 40s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 24s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 47s the patch passed
+1 💚 compile 0m 46s the patch passed
+1 💚 javac 0m 46s the patch passed
+1 💚 shadedjars 5m 36s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 22s the patch passed
_ Other Tests _
+1 💚 unit 227m 16s hbase-server in the patch passed.
251m 21s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux f07b34d2f353 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/testReport/
Max. process+thread count 5152 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/console
versions git=2.34.1 maven=3.8.6
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 38s 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 _
_ HBASE-28463 Compile Tests _
+1 💚 mvninstall 2m 25s HBASE-28463 passed
+1 💚 compile 0m 41s HBASE-28463 passed
+1 💚 shadedjars 5m 10s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 24s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 27s the patch passed
+1 💚 compile 0m 42s the patch passed
+1 💚 javac 0m 42s the patch passed
+1 💚 shadedjars 5m 8s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 24s the patch passed
_ Other Tests _
-1 ❌ unit 244m 29s hbase-server in the patch failed.
267m 39s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux 2190d396b05e 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/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-5829/10/testReport/
Max. process+thread count 4660 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/10/console
versions git=2.34.1 maven=3.8.6
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 15s 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-28463 Compile Tests _
+1 💚 mvninstall 4m 23s HBASE-28463 passed
+1 💚 compile 3m 56s HBASE-28463 passed
+1 💚 checkstyle 0m 49s HBASE-28463 passed
+1 💚 spotless 0m 51s branch has no errors when running spotless:check.
+1 💚 spotbugs 2m 24s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 4m 4s the patch passed
+1 💚 compile 3m 33s the patch passed
+1 💚 javac 3m 33s the patch passed
-0 ⚠️ checkstyle 0m 46s hbase-server: The patch generated 1 new + 14 unchanged - 0 fixed = 15 total (was 14)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 7m 11s Patch does not cause any errors with Hadoop 3.3.6.
+1 💚 spotless 1m 11s patch has no errors when running spotless:check.
+1 💚 spotbugs 2m 37s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 15s The patch does not generate ASF License warnings.
41m 43s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux f614a268dafd 5.4.0-172-generic #190-Ubuntu SMP Fri Feb 2 23:24:22 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
Max. process+thread count 78 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.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 26s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 41s HBASE-28463 passed
+1 💚 compile 0m 46s HBASE-28463 passed
+1 💚 shadedjars 5m 37s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 22s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 43s the patch passed
+1 💚 compile 0m 45s the patch passed
+1 💚 javac 0m 45s the patch passed
+1 💚 shadedjars 5m 35s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 23s the patch passed
_ Other Tests _
-1 ❌ unit 229m 28s hbase-server in the patch failed.
252m 44s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux f2ab4fa85a6c 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/testReport/
Max. process+thread count 4881 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/console
versions git=2.34.1 maven=3.8.6
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 38s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 30s HBASE-28463 passed
+1 💚 compile 0m 43s HBASE-28463 passed
+1 💚 shadedjars 5m 9s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 25s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 22s the patch passed
+1 💚 compile 0m 44s the patch passed
+1 💚 javac 0m 44s the patch passed
+1 💚 shadedjars 5m 9s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 25s the patch passed
_ Other Tests _
-1 ❌ unit 287m 8s hbase-server in the patch failed.
310m 4s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux 72fafacd2753 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/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-5829/11/testReport/
Max. process+thread count 5219 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/11/console
versions git=2.34.1 maven=3.8.6
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@jhungund jhungund requested a review from wchevreuil April 24, 2024 03:43
@jhungund
Copy link
Contributor Author

retest

Adjust the unit test to incorporate the delay in the prefetch
due to metadata access.

Change-Id: I2fc25d564be0aa454921cafa5ce40d9df8135211
@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 36s 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-28463 Compile Tests _
+1 💚 mvninstall 3m 1s HBASE-28463 passed
+1 💚 compile 2m 30s HBASE-28463 passed
+1 💚 checkstyle 0m 39s HBASE-28463 passed
+1 💚 spotless 0m 44s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 34s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 44s the patch passed
+1 💚 compile 2m 31s the patch passed
+1 💚 javac 2m 31s the patch passed
-0 ⚠️ checkstyle 0m 38s hbase-server: The patch generated 1 new + 49 unchanged - 0 fixed = 50 total (was 49)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 4m 50s Patch does not cause any errors with Hadoop 3.3.6.
+1 💚 spotless 0m 43s patch has no errors when running spotless:check.
+1 💚 spotbugs 1m 38s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 12s The patch does not generate ASF License warnings.
28m 18s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux f8e926b700bb 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
Max. process+thread count 80 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/console
versions git=2.34.1 maven=3.8.6 spotbugs=4.7.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 40s 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-28463 Compile Tests _
+1 💚 mvninstall 2m 29s HBASE-28463 passed
+1 💚 compile 0m 44s HBASE-28463 passed
+1 💚 shadedjars 5m 14s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 25s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 27s the patch passed
+1 💚 compile 0m 42s the patch passed
+1 💚 javac 0m 42s the patch passed
+1 💚 shadedjars 5m 11s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 25s the patch passed
_ Other Tests _
-1 ❌ unit 11m 32s hbase-server in the patch failed.
31m 27s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5829
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux 913a46bdbdc7 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/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-5829/12/testReport/
Max. process+thread count 1578 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/console
versions git=2.34.1 maven=3.8.6
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 42s Docker mode activated.
-0 ⚠️ yetus 0m 15s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ HBASE-28463 Compile Tests _
+1 💚 mvninstall 3m 23s HBASE-28463 passed
+1 💚 compile 0m 56s HBASE-28463 passed
+1 💚 shadedjars 6m 22s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 30s HBASE-28463 passed
-0 ⚠️ patch 7m 1s Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+1 💚 mvninstall 3m 21s the patch passed
+1 💚 compile 0m 54s the patch passed
+1 💚 javac 0m 54s the patch passed
+1 💚 shadedjars 6m 15s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 29s the patch passed
_ Other Tests _
-1 ❌ unit 264m 3s hbase-server in the patch failed.
292m 5s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
JIRA Issue HBASE-28468
Optional Tests javac javadoc unit shadedjars compile
uname Linux 459c3541b08b 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / a2321ce
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/testReport/
Max. process+thread count 4564 (vs. ulimit of 30000)
modules C: hbase-server U: hbase-server
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5829/12/console
versions git=2.34.1 maven=3.8.6
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@wchevreuil wchevreuil merged commit bfef12a into apache:HBASE-28463 Apr 25, 2024
wchevreuil pushed a commit that referenced this pull request Apr 25, 2024
…5829)

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
wchevreuil pushed a commit that referenced this pull request May 20, 2024
…5829)

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
vinayakphegde pushed a commit to vinayakphegde/hbase that referenced this pull request May 21, 2024
…pache#5829)

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
wchevreuil pushed a commit that referenced this pull request May 21, 2024
…5829)

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
jhungund added a commit to janardhanrh/hbase that referenced this pull request May 29, 2024
…pache#5829)

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
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