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-28465 Implementation of framework for time-based priority bucket-cache #5793

Merged
merged 4 commits into from
Apr 8, 2024

Conversation

vinayakphegde
Copy link
Contributor

No description provided.

@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 4m 40s HBASE-28463 passed
+1 💚 compile 3m 12s HBASE-28463 passed
+1 💚 checkstyle 0m 42s HBASE-28463 passed
+1 💚 spotless 0m 58s branch has no errors when running spotless:check.
+1 💚 spotbugs 2m 2s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 44s the patch passed
+1 💚 compile 3m 6s the patch passed
+1 💚 javac 3m 6s the patch passed
-0 ⚠️ checkstyle 0m 46s hbase-server: The patch generated 2 new + 4 unchanged - 0 fixed = 6 total (was 4)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 6m 24s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 47s patch has 46 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 2m 6s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 13s The patch does not generate ASF License warnings.
37m 28s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/1/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5793
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux d3046cc1445b 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 / 28c1e3b
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/1/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/1/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 77 (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-5793/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.

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, looks good, I just think we need to add javadoc on public methods and explain properly when we will consider a file/block as cold/hot, specially when dealing with default tiering type.

long diff = currentTimestamp - maxTimestamp.getAsLong();
return diff <= hotDataAge;
}
return false;
Copy link
Contributor

Choose a reason for hiding this comment

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

Shouldn't we return "true" by default? I.e., if not using DataTieringType.TIME_RANGE, this should consider all data as hot and let the LFU logic decide on the eviction right?

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 logic reaches that point only when the DataTieringType is set to NONE, indicating that data tiering is disabled. If data tiering is disabled, we should not consider that data as special by marking it as hot, correct? Instead, it should be considered as cold.
For example, if I set it to true, it means we are indicating that data is hot even when data tiering is disabled.

Copy link
Contributor

@wchevreuil wchevreuil Apr 5, 2024

Choose a reason for hiding this comment

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

For example, if I set it to true, it means we are indicating that data is hot even when data tiering is disabled.

Ok, I think there's a misunderstanding of concepts. Today, without this DataTiering thing, the behaviour is to cache everything and evict based on LFU (in other words, everything is hot). If I don't turn on DataTieringType.TIME_RANGE, I want things to keep working as today (cache everything and evict based on LFU). Maybe we can change the default name from NONE to ALL.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Even with this implementation, it will function the same. For example, in eviction, we'll prioritize evicting the cold data files first, which are all the files that satisfy the condition (isDataTieringEnabled(file) && !isHotData(file)). Once I identify these files, I will proceed to evict them and then hand over control to the rest of the logic.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Okay, I get your point. then we can eliminate isDataTieringEnabled methods, right? since we are considering everything as hot by default.


HStoreFile hStoreFile = getHStoreFile(hFilePath);
if (hStoreFile == null) {
throw new DataTieringException(
Copy link
Contributor

Choose a reason for hiding this comment

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

Rather than throwing exception, maybe just return false? I wonder if it would be possible that a compaction completed and moved the given file away just after we entered this method.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Wouldn't it be better to throw the exception and let the caller decide what action to take based on the context?

Copy link
Contributor

Choose a reason for hiding this comment

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

I'm thinking in terms of responsibilities and cohesion. Who should know how to classify a block as hot or cold for a file that is not in the list of regions stores? Shouldn't this be done here?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Got it. should we change in other places as well?


try {
Set<String> coldFilePaths = dataTieringManager.getColdDataFiles(allCachedBlocks);
assertEquals(1, coldFilePaths.size());
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 explain better why we only get 1 here, even though we say there are two non-hot files in the javadoc header.

Also, shouldn't we assert on the exact cold file, just to make sure our logic does mark the file we know is cold?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah, good idea. Maybe I write another test to stress on cold data

@vinayakphegde
Copy link
Contributor Author

Overall, looks good, I just think we need to add javadoc on public methods and explain properly when we will consider a file/block as cold/hot, specially when dealing with default tiering type.

Sure, We'll add that.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 36s 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 44s HBASE-28463 passed
+1 💚 shadedjars 5m 6s 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 23s the patch passed
_ Other Tests _
+1 💚 unit 245m 25s hbase-server in the patch passed.
268m 10s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5793
Optional Tests javac javadoc unit shadedjars compile
uname Linux 5ffc7c6e8b3f 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 / 28c1e3b
Default Java Temurin-1.8.0_352-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/1/testReport/
Max. process+thread count 4663 (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-5793/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 36s 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 4m 4s HBASE-28463 passed
+1 💚 compile 1m 2s HBASE-28463 passed
+1 💚 shadedjars 6m 40s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 33s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 31s the patch passed
+1 💚 compile 0m 58s the patch passed
+1 💚 javac 0m 58s the patch passed
+1 💚 shadedjars 7m 42s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 31s the patch passed
_ Other Tests _
-1 ❌ unit 269m 1s hbase-server in the patch failed.
299m 16s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5793
Optional Tests javac javadoc unit shadedjars compile
uname Linux 13e6d25cc16e 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 / 28c1e3b
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/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-5793/1/testReport/
Max. process+thread count 4865 (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-5793/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 54s 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 16s HBASE-28463 passed
+1 💚 compile 3m 16s HBASE-28463 passed
+1 💚 checkstyle 0m 43s HBASE-28463 passed
+1 💚 spotless 0m 58s branch has no errors when running spotless:check.
+1 💚 spotbugs 2m 5s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 43s the patch passed
+1 💚 compile 2m 58s the patch passed
+1 💚 javac 2m 58s the patch passed
-0 ⚠️ checkstyle 0m 45s hbase-server: The patch generated 2 new + 4 unchanged - 0 fixed = 6 total (was 4)
+1 💚 whitespace 0m 1s The patch has no whitespace issues.
+1 💚 hadoopcheck 6m 32s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 46s patch has 46 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 2m 4s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 12s The patch does not generate ASF License warnings.
37m 2s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/2/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5793
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux 7c12c5b4ff03 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 / 28c1e3b
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/2/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/2/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count 79 (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-5793/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.

if (exception != null) {
fail("Expected DataTieringException to be thrown");
}
assertEquals(value, expectedResult);
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: assertEquals(expectedResult, value);

if (exception != null) {
fail("Expected DataTieringException to be thrown");
}
assertEquals(value, expectedResult);
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: assertEquals(expectedResult, value);

@Apache-HBase
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 34s 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 2s HBASE-28463 passed
+1 💚 compile 0m 50s HBASE-28463 passed
+1 💚 shadedjars 5m 11s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 27s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 47s the patch passed
+1 💚 compile 0m 52s the patch passed
+1 💚 javac 0m 52s the patch passed
+1 💚 shadedjars 5m 21s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 27s the patch passed
_ Other Tests _
-1 ❌ unit 251m 27s hbase-server in the patch failed.
275m 31s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5793
Optional Tests javac javadoc unit shadedjars compile
uname Linux e0f2e8772541 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 / 28c1e3b
Default Java Eclipse Adoptium-11.0.17+8
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/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-5793/2/testReport/
Max. process+thread count 4710 (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-5793/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 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 19s HBASE-28463 passed
+1 💚 compile 1m 1s HBASE-28463 passed
+1 💚 shadedjars 6m 27s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 34s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 28s the patch passed
+1 💚 compile 1m 14s the patch passed
+1 💚 javac 1m 14s the patch passed
+1 💚 shadedjars 6m 44s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 34s the patch passed
_ Other Tests _
-1 ❌ unit 292m 22s hbase-server in the patch failed.
321m 5s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/2/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5793
Optional Tests javac javadoc unit shadedjars compile
uname Linux 0331e5823b27 5.4.0-163-generic #180-Ubuntu SMP Tue Sep 5 13:21:23 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / 28c1e3b
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/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-5793/2/testReport/
Max. process+thread count 4988 (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-5793/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 42s 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 43s HBASE-28463 passed
+1 💚 compile 2m 48s HBASE-28463 passed
+1 💚 checkstyle 0m 38s HBASE-28463 passed
+1 💚 spotless 0m 49s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 43s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 3m 18s the patch passed
+1 💚 compile 2m 44s the patch passed
+1 💚 javac 2m 44s the patch passed
-0 ⚠️ checkstyle 0m 37s hbase-server: The patch generated 2 new + 4 unchanged - 0 fixed = 6 total (was 4)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 6m 48s Patch does not cause any errors with Hadoop 3.3.6.
-1 ❌ spotless 0m 50s patch has 46 errors when running spotless:check, run spotless:apply to fix.
+1 💚 spotbugs 2m 16s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 14s The patch does not generate ASF License warnings.
35m 3s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/3/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5793
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux 7f8b257c1b65 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 / 28c1e3b
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/3/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt
spotless https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/3/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-5793/3/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 37s 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 52s HBASE-28463 passed
+1 💚 compile 0m 51s HBASE-28463 passed
+1 💚 shadedjars 5m 11s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 25s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 47s the patch passed
+1 💚 compile 0m 49s the patch passed
+1 💚 javac 0m 49s the patch passed
+1 💚 shadedjars 5m 9s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s the patch passed
_ Other Tests _
+1 💚 unit 240m 27s hbase-server in the patch passed.
263m 44s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/3/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5793
Optional Tests javac javadoc unit shadedjars compile
uname Linux a8b35c1b787d 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 / 28c1e3b
Default Java Eclipse Adoptium-11.0.17+8
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/3/testReport/
Max. process+thread count 4671 (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-5793/3/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 41s 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 45s HBASE-28463 passed
+1 💚 compile 0m 43s HBASE-28463 passed
+1 💚 shadedjars 5m 12s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 30s 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 248m 38s hbase-server in the patch passed.
271m 31s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/3/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5793
Optional Tests javac javadoc unit shadedjars compile
uname Linux ef1ff8a4a597 5.4.0-163-generic #180-Ubuntu SMP Tue Sep 5 13:21:23 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / 28c1e3b
Default Java Temurin-1.8.0_352-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/3/testReport/
Max. process+thread count 5053 (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-5793/3/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
Copy link
Contributor

LTGM, can we just address latest spotless failure?

@vinayakphegde
Copy link
Contributor Author

LTGM, can we just address latest spotless failure?

That's because of the Javadoc in the TestDataTieringManager class, where I included the structure of the TestDataTieringManager#hStoreFiles for better code comprehension. What do you think we should do instead?

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 29s 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 38s HBASE-28463 passed
+1 💚 compile 2m 38s HBASE-28463 passed
+1 💚 checkstyle 0m 37s HBASE-28463 passed
+1 💚 spotless 0m 45s branch has no errors when running spotless:check.
+1 💚 spotbugs 1m 37s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 58s the patch passed
+1 💚 compile 2m 39s the patch passed
+1 💚 javac 2m 39s the patch passed
-0 ⚠️ checkstyle 0m 37s hbase-server: The patch generated 8 new + 4 unchanged - 0 fixed = 12 total (was 4)
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 hadoopcheck 5m 40s 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 43s the patch passed
_ Other Tests _
+1 💚 asflicense 0m 10s The patch does not generate ASF License warnings.
31m 17s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/4/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #5793
Optional Tests dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
uname Linux e517e1c5bde6 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 / 28c1e3b
Default Java Eclipse Adoptium-11.0.17+8
checkstyle https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/4/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.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-5793/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.

if (dataTieringType.equals(DataTieringType.TIME_RANGE)) {
long hotDataAge = getDataTieringHotDataAge(configuration);

HStoreFile hStoreFile = getHStoreFile(hFilePath);
Copy link
Contributor

Choose a reason for hiding this comment

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

getConfiguratin(hFilePath) already traverses through the regions to get to the HStore. We will do it again within getHStoreFile. We can slightly improve by avoiding duplicate traversal to get HStore.
One Option I can think is to getStore first.
HStore store = getStore(hFilePath); <= We traverse only once.
Then,
Configuration configuration = getConfiguration(store);
HStoreFile file = getHStoreFile(store);

With this, we only have regions traversal only once.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No, it doesn't traverse through the regions. these are just map lookups.

Copy link
Contributor

Choose a reason for hiding this comment

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

oh ok, then it looks ok.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 56s 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 55s HBASE-28463 passed
+1 💚 compile 0m 49s HBASE-28463 passed
+1 💚 shadedjars 5m 8s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 26s HBASE-28463 passed
_ Patch Compile Tests _
+1 💚 mvninstall 2m 50s the patch passed
+1 💚 compile 0m 49s the patch passed
+1 💚 javac 0m 49s the patch passed
+1 💚 shadedjars 6m 37s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 28s the patch passed
_ Other Tests _
+1 💚 unit 248m 11s hbase-server in the patch passed.
273m 42s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/4/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #5793
Optional Tests javac javadoc unit shadedjars compile
uname Linux 949ec8740130 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 / 28c1e3b
Default Java Eclipse Adoptium-11.0.17+8
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/4/testReport/
Max. process+thread count 4817 (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-5793/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 36s 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 27s HBASE-28463 passed
+1 💚 compile 0m 44s HBASE-28463 passed
+1 💚 shadedjars 5m 10s branch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 25s 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 9s patch has no errors when building our shaded downstream artifacts.
+1 💚 javadoc 0m 25s the patch passed
_ Other Tests _
-1 ❌ unit 278m 11s hbase-server in the patch failed.
300m 49s
Subsystem Report/Notes
Docker ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/4/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR #5793
Optional Tests javac javadoc unit shadedjars compile
uname Linux 30591c443986 5.4.0-163-generic #180-Ubuntu SMP Tue Sep 5 13:21:23 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision HBASE-28463 / 28c1e3b
Default Java Temurin-1.8.0_352-b08
unit https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5793/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-5793/4/testReport/
Max. process+thread count 5764 (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-5793/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.

@vinayakphegde
Copy link
Contributor Author

@wchevreuil, it seems like most of the tests have passed, and any failures were due to flaky tests.

@wchevreuil wchevreuil merged commit a9d3170 into apache:HBASE-28463 Apr 8, 2024
1 check failed
wchevreuil pushed a commit that referenced this pull request Apr 12, 2024
wchevreuil pushed a commit that referenced this pull request Apr 22, 2024
wchevreuil pushed a commit that referenced this pull request Apr 25, 2024
wchevreuil pushed a commit that referenced this pull request May 20, 2024
vinayakphegde added a commit to vinayakphegde/hbase that referenced this pull request May 21, 2024
wchevreuil pushed a commit that referenced this pull request May 21, 2024
jhungund pushed a commit to jhungund/hbase that referenced this pull request May 29, 2024
…t-cache (apache#5793)

Signed-off-by: Wellington Chevreuil <[email protected]>
Change-Id: I22072f951ddfa8768e820952f63bbc2aa3cd5217
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.

4 participants