HBASE-29585 Add row-level cache for the get operation
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 54s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 14s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 4m 35s | master passed | |
| +1 :green_heart: | compile | 7m 55s | master passed | |
| +1 :green_heart: | checkstyle | 2m 1s | master passed | |
| +1 :green_heart: | spotbugs | 4m 57s | master passed | |
| +1 :green_heart: | spotless | 1m 14s | branch has no errors when running spotless:check. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 13s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 4m 58s | the patch passed | |
| -1 :x: | compile | 5m 0s | /patch-compile-hbase-server.txt | hbase-server in the patch failed. |
| -0 :warning: | javac | 5m 0s | /patch-compile-hbase-server.txt | hbase-server in the patch failed. |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 30s | /buildtool-patch-checkstyle-hbase-server.txt | The patch fails to run checkstyle in hbase-server |
| +1 :green_heart: | spotbugs | 6m 13s | the patch passed | |
| +1 :green_heart: | hadoopcheck | 16m 45s | Patch does not cause any errors with Hadoop 3.3.6 3.4.0. | |
| +1 :green_heart: | spotless | 1m 6s | patch has no errors when running spotless:check. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 56s | The patch does not generate ASF License warnings. | |
| 72m 42s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/1/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless |
| uname | Linux 7a96296819e4 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 | master / 872f13ae52f0105a7a27a9844d5974b8ace293ad |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Max. process+thread count | 87 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/1/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 31s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 3s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 10s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 17s | master passed | |
| +1 :green_heart: | compile | 2m 0s | master passed | |
| +1 :green_heart: | javadoc | 1m 14s | master passed | |
| +1 :green_heart: | shadedjars | 6m 18s | branch has no errors when building our shaded downstream artifacts. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 14s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 10s | the patch passed | |
| +1 :green_heart: | compile | 1m 55s | the patch passed | |
| +1 :green_heart: | javac | 1m 55s | the patch passed | |
| +1 :green_heart: | javadoc | 1m 12s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 10s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 2m 15s | hbase-common in the patch passed. | |
| +1 :green_heart: | unit | 0m 37s | hbase-hadoop-compat in the patch passed. | |
| +1 :green_heart: | unit | 1m 31s | hbase-client in the patch passed. | |
| +1 :green_heart: | unit | 212m 6s | hbase-server in the patch passed. | |
| 248m 36s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/1/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux 8de763fb705f 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 | master / 872f13ae52f0105a7a27a9844d5974b8ace293ad |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/1/testReport/ |
| Max. process+thread count | 3882 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/1/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 30s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 9s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 16s | master passed | |
| +1 :green_heart: | compile | 5m 17s | master passed | |
| +1 :green_heart: | checkstyle | 1m 14s | master passed | |
| +1 :green_heart: | spotbugs | 3m 6s | master passed | |
| +1 :green_heart: | spotless | 0m 50s | branch has no errors when running spotless:check. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 12s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 10s | the patch passed | |
| +1 :green_heart: | compile | 5m 15s | the patch passed | |
| -0 :warning: | javac | 3m 23s | /results-compile-javac-hbase-server.txt | hbase-server generated 2 new + 191 unchanged - 2 fixed = 193 total (was 193) |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 19s | /buildtool-patch-checkstyle-hbase-server.txt | The patch fails to run checkstyle in hbase-server |
| +1 :green_heart: | spotbugs | 3m 36s | the patch passed | |
| +1 :green_heart: | hadoopcheck | 12m 20s | Patch does not cause any errors with Hadoop 3.3.6 3.4.0. | |
| +1 :green_heart: | spotless | 0m 45s | patch has no errors when running spotless:check. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 36s | The patch does not generate ASF License warnings. | |
| 49m 32s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/2/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless |
| uname | Linux af233eaf7845 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 | master / 80b728cf4fa93ac86c04f99680720d954db34de7 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Max. process+thread count | 85 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/2/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 35s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 2s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 20s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 9s | master passed | |
| +1 :green_heart: | compile | 1m 55s | master passed | |
| +1 :green_heart: | javadoc | 1m 12s | master passed | |
| +1 :green_heart: | shadedjars | 6m 11s | branch has no errors when building our shaded downstream artifacts. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 13s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 8s | the patch passed | |
| +1 :green_heart: | compile | 1m 54s | the patch passed | |
| +1 :green_heart: | javac | 1m 54s | the patch passed | |
| +1 :green_heart: | javadoc | 1m 12s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 12s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 2m 15s | hbase-common in the patch passed. | |
| +1 :green_heart: | unit | 0m 35s | hbase-hadoop-compat in the patch passed. | |
| +1 :green_heart: | unit | 1m 29s | hbase-client in the patch passed. | |
| +1 :green_heart: | unit | 211m 43s | hbase-server in the patch passed. | |
| 247m 41s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/2/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux 9509bd805f57 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 | master / 80b728cf4fa93ac86c04f99680720d954db34de7 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/2/testReport/ |
| Max. process+thread count | 4194 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/2/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
This is a great idea, thanks for sharing it. I do have some comments, though:
Thank you for starting the PR review.
- Can the RowCacheService be an implementation of BlockCache? Maybe a wrapper to the LRUBlockCache. I'm a bit worried about introducing a whole new layer for intercepting all read/write operations at the RPC service with cache specific logic, however this class is not the cache implementation itself. Seems a bit confusing to have a complete separate entry point to the cache.
BlockCache operates at the HFile access layer, whereas the row cache needs to function at a higher layer that covers both MemStore and HFile. That’s why I implemented RowCacheService in the RPC service layer.
That said, the row cache does not actually cache HFileBlocks, yet it currently relies on the BlockCache interface. I realize this might not be appropriate. I reused the BlockCache interface to reduce the overhead of creating a separate cache implementation solely for the row cache, but in hindsight, this might not have been the best approach. It may be better to build a dedicated cache implementation specifically for the row cache.
What do you think?
- Are we accepting to have same row data in multiple cache? In the current code, I haven't see any checks to avoid that. Maybe if we implement RowCacheService as a block cache implementation, so that the cache operations happen from the inner layers of the read/write operations, it would be easier to avoid duplication.
What exactly does “multiple cache” refer to? Does it mean the L1 and L2 caches in the CombinedBlockCache? If so, I haven’t really considered that aspect yet, but I’ll start looking into it.
- Why not simply evict the row that got mutated? I guess we cannot simply override it in the cache because mutation can happen on individual cells.
I didn’t fully understand the intention behind your question. Could you please explain it in more detail?
- Are we accepting to have data duplicated over separate caches? I don't see any logic to avoid caching a whole block containing a region for a Get in the L2 cache, still we'll be cache the row in the row cache. Similarly, we might re-cache a row that's in the memstore in the row cache.
This is in the same L1/L2 context as your comment 2, correct? If so, I haven’t considered that aspect yet, but I’ll start thinking about how to handle it.
Since the row cache is only enabled when there are at least two HFiles, rows that exist only in the MemStore are not cached. However, when there are two or more HFiles, rows in MemStore are also added again to the row cache. This is an intentional design choice, aimed at bypassing the process of generating results via SegmentScanner and StoreFileScanner, and instead serving Get requests directly from the cache.
- One problem of adding such small units (a single row) in the cache is that we need to keep a map index for each entry. So, the smaller the row in size, more rows would fit in the cache, but more key objects would be retained in the map. In your tests, assuming the default block cache size of 40% of the heap, it would give a 12.8GB of block cache. Have you managed to measure the block cache usage by the row cache, in terms of number of rows in the cache, byte size of the L1 cache and the total heap usage? Maybe wort collecting a heapdump to analyse the map index size in the heap.
I slightly modified the LruBlockCache code to record the row cache size and entry count. The row cache occupies 268.67MB with 338,602 entries. The average size of a single row cache entry is 830 bytes. Within the overall BlockCache, the row cache accounts for 45% by entry count and 2% by size.
2025-09-12T09:08:44,112 INFO [LruBlockCacheStatsExecutor {}] hfile.LruBlockCache: totalSize=12.80 GB, usedSize=12.48 GB, freeSize=329.41 MB, max=12.80 GB, blockCount=752084, accesses=35942999, hits=27403857, hitRatio=76.24%, , cachingAccesses=35942954, cachingHits=27403860, cachingHitsRatio=76.24%, evictions=170, evicted=5806436, evictedPerRun=34155.50588235294, rowBlockCount=338602, rowBlockSize=268.67 MB
That said, the row cache does not actually cache HFileBlocks, yet it currently relies on the BlockCache interface. I realize this might not be appropriate. I reused the BlockCache interface to reduce the overhead of creating a separate cache implementation solely for the row cache, but in hindsight, this might not have been the best approach. It may be better to build a dedicated cache implementation specifically for the row cache.
What do you think?
Yeah, I had the same thought while going through the comments. Having a separate cache structure seems the best way to implement this.
- Are we accepting to have same row data in multiple cache? In the current code, I haven't see any checks to avoid that. Maybe if we implement RowCacheService as a block cache implementation, so that the cache operations happen from the inner layers of the read/write operations, it would be easier to avoid duplication.
What exactly does “multiple cache” refer to? Does it mean the L1 and L2 caches in the CombinedBlockCache? If so, I haven’t really considered that aspect yet, but I’ll start looking into it.
Nevermind my previous comment. We should focus on the separate cache for rows.
- Why not simply evict the row that got mutated? I guess we cannot simply override it in the cache because mutation can happen on individual cells.
I didn’t fully understand the intention behind your question. Could you please explain it in more detail?
Rather than blocking writes to the row cache during updates/bulkload, can we simply make the updates evict/override the row from the cache if it's already there? For puts, we shouldn't need to worry about barries, if we make sure we don't cache the row if it's in the memstore only, but we should to make sure to remove it from the row cache because the cache would now be stale. For bulkloads, I guess we only need to make sure to evict the rows for affected regions after the bulkload has been committed.
- Are we accepting to have data duplicated over separate caches? I don't see any logic to avoid caching a whole block containing a region for a Get in the L2 cache, still we'll be cache the row in the row cache. Similarly, we might re-cache a row that's in the memstore in the row cache.
This is in the same L1/L2 context as your comment 2, correct? If so, I haven’t considered that aspect yet, but I’ll start thinking about how to handle it.
Since the row cache is only enabled when there are at least two HFiles, rows that exist only in the MemStore are not cached. However, when there are two or more HFiles, rows in MemStore are also added again to the row cache. This is an intentional design choice, aimed at bypassing the process of generating results via SegmentScanner and StoreFileScanner, and instead serving Get requests directly from the cache.
Per other comments, agree it's fine to have the row in the row cache and its' block also in the block cache. We need to decide if we want to add blocks to the block cache when doing Get, or Get should cache only in the row cache? Also, should we avoid caching if the row is the memstore? Could be challenging in the current design of caching the whole row, because memstore migh have only updates for few cells within a row.
- One problem of adding such small units (a single row) in the cache is that we need to keep a map index for each entry. So, the smaller the row in size, more rows would fit in the cache, but more key objects would be retained in the map. In your tests, assuming the default block cache size of 40% of the heap, it would give a 12.8GB of block cache. Have you managed to measure the block cache usage by the row cache, in terms of number of rows in the cache, byte size of the L1 cache and the total heap usage? Maybe wort collecting a heapdump to analyse the map index size in the heap.
I slightly modified the LruBlockCache code to record the row cache size and entry count. The row cache occupies 268.67MB with 338,602 entries. The average size of a single row cache entry is 830 bytes. Within the overall BlockCache, the row cache accounts for 45% by entry count and 2% by size.
2025-09-12T09:08:44,112 INFO [LruBlockCacheStatsExecutor {}] hfile.LruBlockCache: totalSize=12.80 GB, usedSize=12.48 GB, freeSize=329.41 MB, max=12.80 GB, blockCount=752084, accesses=35942999, hits=27403857, hitRatio=76.24%, , cachingAccesses=35942954, cachingHits=27403860, cachingHitsRatio=76.24%, evictions=170, evicted=5806436, evictedPerRun=34155.50588235294, rowBlockCount=338602, rowBlockSize=268.67 MB
What if more rows get cached, over time, as more gets for different rows are executed? It could lead to many rows in the cache, and many more objects in the map to index it. In the recent past. we've seen some heap issues when having very large file based bucket cache and small compressed blocks. I guess we could face similar problems here too.
The design doc looks good. Skimmed the code, seems we put row cache into block cache? Minding explaining more on why we choose to use block cache to implement row cache? What is the benefit?
Thanks.
- Why not simply evict the row that got mutated? I guess we cannot simply override it in the cache because mutation can happen on individual cells.
I didn’t fully understand the intention behind your question. Could you please explain it in more detail?
Rather than blocking writes to the row cache during updates/bulkload, can we simply make the updates evict/override the row from the cache if it's already there? For puts, we shouldn't need to worry about barries, if we make sure we don't cache the row if it's in the memstore only, but we should to make sure to remove it from the row cache because the cache would now be stale. For bulkloads, I guess we only need to make sure to evict the rows for affected regions after the bulkload has been committed.
When the data exists in both the MemStore and the StoreFiles, we need to store it in the row cache to avoid result merging. In that case, due to the following issues, a barrier was introduced.
| Thread | Time 1 | Time 2 | Time 3 | Time 4 |
|---|---|---|---|---|
| th1 | delete row1 from RowCache | Put row1 to Region | write row1 to RowCache | |
| th2 | delete row1 from RowCache | Put row1 to Region | write row1 to RowCache | |
| th3 | Get for row1 not from RowCache. Good | Get for row1 not from RowCache. Good | Get for row1 from stale RowCache. Bad | Get for row1 not from RowCache. Good |
It would be more efficient to do as you mentioned when doing a bulkload.
- Are we accepting to have data duplicated over separate caches? I don't see any logic to avoid caching a whole block containing a region for a Get in the L2 cache, still we'll be cache the row in the row cache. Similarly, we might re-cache a row that's in the memstore in the row cache.
This is in the same L1/L2 context as your comment 2, correct? If so, I haven’t considered that aspect yet, but I’ll start thinking about how to handle it. Since the row cache is only enabled when there are at least two HFiles, rows that exist only in the MemStore are not cached. However, when there are two or more HFiles, rows in MemStore are also added again to the row cache. This is an intentional design choice, aimed at bypassing the process of generating results via SegmentScanner and StoreFileScanner, and instead serving Get requests directly from the cache.
Per other comments, agree it's fine to have the row in the row cache and its' block also in the block cache. We need to decide if we want to add blocks to the block cache when doing Get, or Get should cache only in the row cache? Also, should we avoid caching if the row is the memstore? Could be challenging in the current design of caching the whole row, because memstore migh have only updates for few cells within a row.
I already answered this in another comment, but I’ll respond here as well.
I think it’s better to put it into the BlockCache when doing a Get, according to the BlockCache setting.
It is more efficient not to create a row cache when the cells to be fetched exist only in the MemStore. However, if the cells to be fetched are in both the MemStore and the StoreFiles, then creating a row cache is efficient to avoid result merging.
I’ll give some more thought on how we can achieve this.
- One problem of adding such small units (a single row) in the cache is that we need to keep a map index for each entry. So, the smaller the row in size, more rows would fit in the cache, but more key objects would be retained in the map. In your tests, assuming the default block cache size of 40% of the heap, it would give a 12.8GB of block cache. Have you managed to measure the block cache usage by the row cache, in terms of number of rows in the cache, byte size of the L1 cache and the total heap usage? Maybe wort collecting a heapdump to analyse the map index size in the heap.
I slightly modified the LruBlockCache code to record the row cache size and entry count. The row cache occupies 268.67MB with 338,602 entries. The average size of a single row cache entry is 830 bytes. Within the overall BlockCache, the row cache accounts for 45% by entry count and 2% by size.
2025-09-12T09:08:44,112 INFO [LruBlockCacheStatsExecutor {}] hfile.LruBlockCache: totalSize=12.80 GB, usedSize=12.48 GB, freeSize=329.41 MB, max=12.80 GB, blockCount=752084, accesses=35942999, hits=27403857, hitRatio=76.24%, , cachingAccesses=35942954, cachingHits=27403860, cachingHitsRatio=76.24%, evictions=170, evicted=5806436, evictedPerRun=34155.50588235294, rowBlockCount=338602, rowBlockSize=268.67 MBWhat if more rows get cached, over time, as more gets for different rows are executed? It could lead to many rows in the cache, and many more objects in the map to index it. In the recent past. we've seen some heap issues when having very large file based bucket cache and small compressed blocks. I guess we could face similar problems here too.
Okay. Then I’ll take a heap dump and check the size of the map’s index.
The design doc looks good. Skimmed the code, seems we put row cache into block cache? Minding explaining more on why we choose to use block cache to implement row cache? What is the benefit?
Thanks.
I did it that way because the implementation was simpler. However, it causes confusion and makes it harder to have clear control over the row cache, so I’ve decided to create a separate RowCache implementation.
The TODOs are as follows, and I will proceed in order:
- [x] Separate the row cache implementation
- [x] Remove the condition that decides whether to put data into the row cache based on the number of StoreFiles
- [x] Do not use the row cache when the data exists only in the MemStore
- [x] Invalidate only the row cache of regions that were bulkloaded
- [x] Take a heap dump to check the index size of the map
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 28s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 3s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 35s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 36s | master passed | |
| +1 :green_heart: | compile | 1m 57s | master passed | |
| +1 :green_heart: | javadoc | 1m 14s | master passed | |
| +1 :green_heart: | shadedjars | 6m 24s | branch has no errors when building our shaded downstream artifacts. | |
| -0 :warning: | patch | 6m 55s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 15s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 6s | the patch passed | |
| +1 :green_heart: | compile | 1m 54s | the patch passed | |
| +1 :green_heart: | javac | 1m 54s | the patch passed | |
| +1 :green_heart: | javadoc | 1m 13s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 13s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 2m 16s | hbase-common in the patch passed. | |
| +1 :green_heart: | unit | 0m 35s | hbase-hadoop-compat in the patch passed. | |
| +1 :green_heart: | unit | 1m 30s | hbase-client in the patch passed. | |
| -1 :x: | unit | 8m 34s | /patch-unit-hbase-server.txt | hbase-server in the patch failed. |
| 42m 25s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/3/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux 6c7693d10a06 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 | master / 120de1b93adcdc9cdb0bda658576ccb2c78fa06f |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/3/testReport/ |
| Max. process+thread count | 1119 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/3/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 28s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 33s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 38s | master passed | |
| +1 :green_heart: | compile | 5m 19s | master passed | |
| +1 :green_heart: | checkstyle | 1m 20s | master passed | |
| +1 :green_heart: | spotbugs | 3m 12s | master passed | |
| +0 :ok: | refguide | 2m 23s | branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | spotless | 0m 49s | branch has no errors when running spotless:check. | |
| -0 :warning: | patch | 1m 12s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 12s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 8s | the patch passed | |
| +1 :green_heart: | compile | 5m 13s | the patch passed | |
| +1 :green_heart: | javac | 5m 13s | the patch passed | |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 8s | /results-checkstyle-hbase-hadoop-compat.txt | hbase-hadoop-compat: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1) |
| -0 :warning: | checkstyle | 0m 19s | /buildtool-patch-checkstyle-hbase-server.txt | The patch fails to run checkstyle in hbase-server |
| +1 :green_heart: | xmllint | 0m 0s | No new issues. | |
| +1 :green_heart: | spotbugs | 3m 35s | the patch passed | |
| +0 :ok: | refguide | 2m 6s | patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | hadoopcheck | 12m 17s | Patch does not cause any errors with Hadoop 3.3.6 3.4.1. | |
| -1 :x: | spotless | 0m 38s | patch has 36 errors when running spotless:check, run spotless:apply to fix. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 35s | The patch does not generate ASF License warnings. | |
| 54m 41s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/3/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless xmllint refguide |
| uname | Linux 5c7031581bda 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 | master / 120de1b93adcdc9cdb0bda658576ccb2c78fa06f |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/3/yetus-general-check/output/branch-site/book.html |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/3/yetus-general-check/output/patch-site/book.html |
| spotless | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/3/artifact/yetus-general-check/output/patch-spotless.txt |
| Max. process+thread count | 87 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/3/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 28s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 34s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 37s | master passed | |
| +1 :green_heart: | compile | 5m 22s | master passed | |
| +1 :green_heart: | checkstyle | 1m 15s | master passed | |
| +1 :green_heart: | spotbugs | 3m 10s | master passed | |
| +0 :ok: | refguide | 2m 21s | branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | spotless | 0m 49s | branch has no errors when running spotless:check. | |
| -0 :warning: | patch | 1m 13s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 11s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 12s | the patch passed | |
| +1 :green_heart: | compile | 5m 17s | the patch passed | |
| +1 :green_heart: | javac | 5m 17s | the patch passed | |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 9s | /results-checkstyle-hbase-hadoop-compat.txt | hbase-hadoop-compat: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1) |
| -0 :warning: | checkstyle | 0m 20s | /buildtool-patch-checkstyle-hbase-server.txt | The patch fails to run checkstyle in hbase-server |
| +1 :green_heart: | xmllint | 0m 0s | No new issues. | |
| +1 :green_heart: | spotbugs | 3m 34s | the patch passed | |
| +0 :ok: | refguide | 2m 8s | patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | hadoopcheck | 12m 20s | Patch does not cause any errors with Hadoop 3.3.6 3.4.1. | |
| -1 :x: | spotless | 0m 38s | patch has 36 errors when running spotless:check, run spotless:apply to fix. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 35s | The patch does not generate ASF License warnings. | |
| 54m 51s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/4/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless xmllint refguide |
| uname | Linux 999c024eeebc 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 | master / 5429771c39440bfade97f4d93d3391f4e47056b6 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/4/yetus-general-check/output/branch-site/book.html |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/4/yetus-general-check/output/patch-site/book.html |
| spotless | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/4/artifact/yetus-general-check/output/patch-spotless.txt |
| Max. process+thread count | 85 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/4/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 28s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 4s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 11s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 10s | master passed | |
| +1 :green_heart: | compile | 1m 55s | master passed | |
| +1 :green_heart: | javadoc | 1m 12s | master passed | |
| +1 :green_heart: | shadedjars | 6m 12s | branch has no errors when building our shaded downstream artifacts. | |
| -0 :warning: | patch | 6m 43s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 14s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 12s | the patch passed | |
| +1 :green_heart: | compile | 1m 54s | the patch passed | |
| +1 :green_heart: | javac | 1m 54s | the patch passed | |
| +1 :green_heart: | javadoc | 1m 13s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 15s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 2m 17s | hbase-common in the patch passed. | |
| +1 :green_heart: | unit | 0m 35s | hbase-hadoop-compat in the patch passed. | |
| +1 :green_heart: | unit | 1m 30s | hbase-client in the patch passed. | |
| -1 :x: | unit | 212m 12s | /patch-unit-hbase-server.txt | hbase-server in the patch failed. |
| 248m 38s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/4/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux b1492ddbae10 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 | master / 5429771c39440bfade97f4d93d3391f4e47056b6 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/4/testReport/ |
| Max. process+thread count | 4691 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/4/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 29s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 12s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 7s | master passed | |
| +1 :green_heart: | compile | 5m 15s | master passed | |
| +1 :green_heart: | checkstyle | 1m 15s | master passed | |
| +1 :green_heart: | spotbugs | 3m 11s | master passed | |
| +0 :ok: | refguide | 2m 3s | branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | spotless | 0m 45s | branch has no errors when running spotless:check. | |
| -0 :warning: | patch | 1m 9s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 11s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 5s | the patch passed | |
| +1 :green_heart: | compile | 5m 15s | the patch passed | |
| +1 :green_heart: | javac | 5m 15s | the patch passed | |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 8s | /results-checkstyle-hbase-hadoop-compat.txt | hbase-hadoop-compat: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1) |
| -0 :warning: | checkstyle | 0m 19s | /buildtool-patch-checkstyle-hbase-server.txt | The patch fails to run checkstyle in hbase-server |
| +1 :green_heart: | xmllint | 0m 0s | No new issues. | |
| +1 :green_heart: | spotbugs | 3m 35s | the patch passed | |
| +0 :ok: | refguide | 2m 6s | patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | hadoopcheck | 12m 2s | Patch does not cause any errors with Hadoop 3.3.6 3.4.1. | |
| +1 :green_heart: | spotless | 0m 45s | patch has no errors when running spotless:check. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 34s | The patch does not generate ASF License warnings. | |
| 53m 7s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/5/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless xmllint refguide |
| uname | Linux 00adc4087562 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 | master / b1479a27e17750e7bce2273f1280f7a837ea84a8 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/5/yetus-general-check/output/branch-site/book.html |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/5/yetus-general-check/output/patch-site/book.html |
| Max. process+thread count | 84 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/5/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 30s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 3s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 16s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 16s | master passed | |
| +1 :green_heart: | compile | 1m 54s | master passed | |
| +1 :green_heart: | javadoc | 1m 14s | master passed | |
| +1 :green_heart: | shadedjars | 6m 14s | branch has no errors when building our shaded downstream artifacts. | |
| -0 :warning: | patch | 6m 46s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 14s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 11s | the patch passed | |
| +1 :green_heart: | compile | 1m 55s | the patch passed | |
| +1 :green_heart: | javac | 1m 55s | the patch passed | |
| +1 :green_heart: | javadoc | 1m 12s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 12s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 2m 16s | hbase-common in the patch passed. | |
| +1 :green_heart: | unit | 0m 35s | hbase-hadoop-compat in the patch passed. | |
| +1 :green_heart: | unit | 1m 31s | hbase-client in the patch passed. | |
| -1 :x: | unit | 211m 1s | /patch-unit-hbase-server.txt | hbase-server in the patch failed. |
| 247m 16s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/5/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux 90a3a2a49ed6 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 | master / b1479a27e17750e7bce2273f1280f7a837ea84a8 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/5/testReport/ |
| Max. process+thread count | 4769 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/5/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 29s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 1s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 13s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 7s | master passed | |
| +1 :green_heart: | compile | 5m 21s | master passed | |
| +1 :green_heart: | checkstyle | 1m 14s | master passed | |
| +1 :green_heart: | spotbugs | 3m 6s | master passed | |
| +0 :ok: | refguide | 2m 6s | branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | spotless | 0m 45s | branch has no errors when running spotless:check. | |
| -0 :warning: | patch | 1m 9s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 12s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 10s | the patch passed | |
| +1 :green_heart: | compile | 5m 12s | the patch passed | |
| +1 :green_heart: | javac | 5m 12s | the patch passed | |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 9s | /results-checkstyle-hbase-hadoop-compat.txt | hbase-hadoop-compat: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1) |
| -0 :warning: | checkstyle | 0m 19s | /buildtool-patch-checkstyle-hbase-server.txt | The patch fails to run checkstyle in hbase-server |
| +1 :green_heart: | xmllint | 0m 0s | No new issues. | |
| +1 :green_heart: | spotbugs | 3m 36s | the patch passed | |
| +0 :ok: | refguide | 2m 6s | patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | hadoopcheck | 12m 7s | Patch does not cause any errors with Hadoop 3.3.6 3.4.1. | |
| +1 :green_heart: | spotless | 0m 46s | patch has no errors when running spotless:check. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 34s | The patch does not generate ASF License warnings. | |
| 53m 27s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/6/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless xmllint refguide |
| uname | Linux 04ed6a7ca738 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 | master / a6a8465da02eae443a8116bbe84aa08d62b7d467 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/6/yetus-general-check/output/branch-site/book.html |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/6/yetus-general-check/output/patch-site/book.html |
| Max. process+thread count | 85 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/6/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 28s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 4s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 15s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 20s | master passed | |
| +1 :green_heart: | compile | 1m 59s | master passed | |
| +1 :green_heart: | javadoc | 1m 13s | master passed | |
| +1 :green_heart: | shadedjars | 6m 12s | branch has no errors when building our shaded downstream artifacts. | |
| -0 :warning: | patch | 6m 44s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 13s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 12s | the patch passed | |
| +1 :green_heart: | compile | 1m 56s | the patch passed | |
| +1 :green_heart: | javac | 1m 56s | the patch passed | |
| +1 :green_heart: | javadoc | 1m 14s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 17s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 2m 20s | hbase-common in the patch passed. | |
| +1 :green_heart: | unit | 0m 35s | hbase-hadoop-compat in the patch passed. | |
| +1 :green_heart: | unit | 1m 30s | hbase-client in the patch passed. | |
| -1 :x: | unit | 216m 44s | /patch-unit-hbase-server.txt | hbase-server in the patch failed. |
| 253m 27s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/6/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux 40533ed30cbf 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 | master / a6a8465da02eae443a8116bbe84aa08d62b7d467 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/6/testReport/ |
| Max. process+thread count | 4276 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/6/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 29s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 1s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 21s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 15s | master passed | |
| +1 :green_heart: | compile | 5m 13s | master passed | |
| +1 :green_heart: | checkstyle | 1m 15s | master passed | |
| +1 :green_heart: | spotbugs | 3m 8s | master passed | |
| +0 :ok: | refguide | 2m 12s | branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | spotless | 0m 45s | branch has no errors when running spotless:check. | |
| -0 :warning: | patch | 1m 9s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 12s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 13s | the patch passed | |
| -1 :x: | compile | 3m 20s | /patch-compile-hbase-server.txt | hbase-server in the patch failed. |
| -0 :warning: | javac | 3m 20s | /patch-compile-hbase-server.txt | hbase-server in the patch failed. |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 8s | /results-checkstyle-hbase-hadoop-compat.txt | hbase-hadoop-compat: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1) |
| -0 :warning: | checkstyle | 0m 19s | /buildtool-patch-checkstyle-hbase-server.txt | The patch fails to run checkstyle in hbase-server |
| +1 :green_heart: | xmllint | 0m 0s | No new issues. | |
| +1 :green_heart: | spotbugs | 3m 55s | the patch passed | |
| +0 :ok: | refguide | 2m 6s | patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | hadoopcheck | 12m 10s | Patch does not cause any errors with Hadoop 3.3.6 3.4.1. | |
| +1 :green_heart: | spotless | 0m 45s | patch has no errors when running spotless:check. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 34s | The patch does not generate ASF License warnings. | |
| 54m 2s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/7/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless xmllint refguide |
| uname | Linux f4f9d6ab9d24 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 | master / 6171654c20de0d50cfe9f2736da3af775dde37be |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/7/yetus-general-check/output/branch-site/book.html |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/7/yetus-general-check/output/patch-site/book.html |
| Max. process+thread count | 89 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/7/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
- One problem of adding such small units (a single row) in the cache is that we need to keep a map index for each entry. So, the smaller the row in size, more rows would fit in the cache, but more key objects would be retained in the map. In your tests, assuming the default block cache size of 40% of the heap, it would give a 12.8GB of block cache. Have you managed to measure the block cache usage by the row cache, in terms of number of rows in the cache, byte size of the L1 cache and the total heap usage? Maybe wort collecting a heapdump to analyse the map index size in the heap.
I slightly modified the LruBlockCache code to record the row cache size and entry count. The row cache occupies 268.67MB with 338,602 entries. The average size of a single row cache entry is 830 bytes. Within the overall BlockCache, the row cache accounts for 45% by entry count and 2% by size.
2025-09-12T09:08:44,112 INFO [LruBlockCacheStatsExecutor {}] hfile.LruBlockCache: totalSize=12.80 GB, usedSize=12.48 GB, freeSize=329.41 MB, max=12.80 GB, blockCount=752084, accesses=35942999, hits=27403857, hitRatio=76.24%, , cachingAccesses=35942954, cachingHits=27403860, cachingHitsRatio=76.24%, evictions=170, evicted=5806436, evictedPerRun=34155.50588235294, rowBlockCount=338602, rowBlockSize=268.67 MBWhat if more rows get cached, over time, as more gets for different rows are executed? It could lead to many rows in the cache, and many more objects in the map to index it. In the recent past. we've seen some heap issues when having very large file based bucket cache and small compressed blocks. I guess we could face similar problems here too.
Okay. Then I’ll take a heap dump and check the size of the map’s index.
I configured the RegionServer with a 4 GB heap, setting hfile.block.cache.size to 0.3 and row.cache.size to 0.1, then reran the same workload as before. Under these settings, the maximum RowCache capacity is approximately 400 MB. After the RowCache was fully populated, I generated and analyzed a heap dump.
- RowCache Size: 409 MB
- RowCache Count: 697,234 entries
- Average RowCache Entry Size: 615 B
- This is reduced from 830 B previously, mainly due to a simplified RowCacheKey.
- Retained Heap Size: 622 MB
- Because of the overhead associated with Caffeine’s key/value structures, the retained size on heap amounts to 52% more than the actual data size for this workload.
- I believe this is acceptable if the RowCache size is configured relatively smaller than the BlockCache, for example, around 2% of the BlockCache size. The positive impact of RowCache is already noticeable even at this smaller capacity.
@wchevreuil I have completed all the tasks on the TODO list. Please review it again.
I’m currently trying to determine the appropriate size of the RowCache relative to the BlockCache.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 29s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 3s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 28s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 14s | master passed | |
| +1 :green_heart: | compile | 1m 55s | master passed | |
| +1 :green_heart: | javadoc | 1m 14s | master passed | |
| +1 :green_heart: | shadedjars | 6m 17s | branch has no errors when building our shaded downstream artifacts. | |
| -0 :warning: | patch | 6m 49s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 14s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 11s | the patch passed | |
| +1 :green_heart: | compile | 1m 54s | the patch passed | |
| +1 :green_heart: | javac | 1m 54s | the patch passed | |
| +1 :green_heart: | javadoc | 1m 18s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 13s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 2m 16s | hbase-common in the patch passed. | |
| +1 :green_heart: | unit | 0m 34s | hbase-hadoop-compat in the patch passed. | |
| +1 :green_heart: | unit | 1m 30s | hbase-client in the patch passed. | |
| +1 :green_heart: | unit | 213m 3s | hbase-server in the patch passed. | |
| 249m 37s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/7/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux 68e0774386bf 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 | master / 6171654c20de0d50cfe9f2736da3af775dde37be |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/7/testReport/ |
| Max. process+thread count | 4200 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/7/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 28s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 12s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 10s | master passed | |
| +1 :green_heart: | compile | 5m 22s | master passed | |
| +1 :green_heart: | checkstyle | 1m 14s | master passed | |
| +1 :green_heart: | spotbugs | 3m 7s | master passed | |
| +0 :ok: | refguide | 2m 5s | branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | spotless | 0m 47s | branch has no errors when running spotless:check. | |
| -0 :warning: | patch | 1m 10s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 12s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 11s | the patch passed | |
| +1 :green_heart: | compile | 5m 18s | the patch passed | |
| +1 :green_heart: | javac | 5m 18s | the patch passed | |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 9s | /results-checkstyle-hbase-hadoop-compat.txt | hbase-hadoop-compat: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1) |
| -0 :warning: | checkstyle | 0m 19s | /buildtool-patch-checkstyle-hbase-server.txt | The patch fails to run checkstyle in hbase-server |
| +1 :green_heart: | xmllint | 0m 0s | No new issues. | |
| +1 :green_heart: | spotbugs | 3m 38s | the patch passed | |
| +0 :ok: | refguide | 2m 5s | patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | hadoopcheck | 12m 1s | Patch does not cause any errors with Hadoop 3.3.6 3.4.1. | |
| +1 :green_heart: | spotless | 0m 45s | patch has no errors when running spotless:check. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 34s | The patch does not generate ASF License warnings. | |
| 53m 25s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/8/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless xmllint refguide |
| uname | Linux a16c5d086ddb 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 | master / e33db29e8f7834a26040123afd3e22d6f7c6afca |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/8/yetus-general-check/output/branch-site/book.html |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/8/yetus-general-check/output/patch-site/book.html |
| Max. process+thread count | 85 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/8/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 29s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 4s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 13s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 14s | master passed | |
| +1 :green_heart: | compile | 1m 55s | master passed | |
| +1 :green_heart: | javadoc | 1m 13s | master passed | |
| +1 :green_heart: | shadedjars | 6m 21s | branch has no errors when building our shaded downstream artifacts. | |
| -0 :warning: | patch | 6m 53s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 14s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 12s | the patch passed | |
| +1 :green_heart: | compile | 1m 55s | the patch passed | |
| +1 :green_heart: | javac | 1m 55s | the patch passed | |
| +1 :green_heart: | javadoc | 1m 12s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 16s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 2m 17s | hbase-common in the patch passed. | |
| +1 :green_heart: | unit | 0m 36s | hbase-hadoop-compat in the patch passed. | |
| +1 :green_heart: | unit | 1m 32s | hbase-client in the patch passed. | |
| +1 :green_heart: | unit | 234m 10s | hbase-server in the patch passed. | |
| 270m 12s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/8/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux fca6c3f9654a 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 | master / e33db29e8f7834a26040123afd3e22d6f7c6afca |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/8/testReport/ |
| Max. process+thread count | 3995 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/8/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
@wchevreuil I have completed all the tasks on the TODO list. Please review it again.
Thanks! Please allow me a few days to review it.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 29s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 38s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 35s | master passed | |
| +1 :green_heart: | compile | 8m 27s | master passed | |
| +1 :green_heart: | checkstyle | 1m 12s | master passed | |
| +1 :green_heart: | spotbugs | 10m 27s | master passed | |
| +0 :ok: | refguide | 2m 32s | branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | spotless | 0m 45s | branch has no errors when running spotless:check. | |
| -0 :warning: | patch | 1m 13s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 16s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 8s | the patch passed | |
| +1 :green_heart: | compile | 8m 26s | the patch passed | |
| +1 :green_heart: | javac | 8m 26s | the patch passed | |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 33s | /buildtool-patch-checkstyle-root.txt | The patch fails to run checkstyle in root |
| +1 :green_heart: | xmllint | 0m 0s | No new issues. | |
| +1 :green_heart: | spotbugs | 11m 11s | the patch passed | |
| +0 :ok: | refguide | 2m 3s | patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | hadoopcheck | 12m 17s | Patch does not cause any errors with Hadoop 3.3.6 3.4.1. | |
| +1 :green_heart: | spotless | 0m 45s | patch has no errors when running spotless:check. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 45s | The patch does not generate ASF License warnings. | |
| 76m 10s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/9/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless xmllint refguide |
| uname | Linux 75854acf45f4 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 | master / d54fff4734ffbb41f406003b931c0956a024e68f |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/9/yetus-general-check/output/branch-site/book.html |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/9/yetus-general-check/output/patch-site/book.html |
| Max. process+thread count | 189 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server . U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/9/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:broken_heart: -1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 30s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 3s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 24s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 36s | master passed | |
| +1 :green_heart: | compile | 2m 16s | master passed | |
| +1 :green_heart: | javadoc | 3m 7s | master passed | |
| +1 :green_heart: | shadedjars | 6m 19s | branch has no errors when building our shaded downstream artifacts. | |
| -0 :warning: | patch | 6m 50s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 17s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 5s | the patch passed | |
| +1 :green_heart: | compile | 2m 12s | the patch passed | |
| +1 :green_heart: | javac | 2m 12s | the patch passed | |
| +1 :green_heart: | javadoc | 3m 7s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 13s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| -1 :x: | unit | 272m 41s | /patch-unit-root.txt | root in the patch failed. |
| 313m 52s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/9/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux 634b956617df 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 | master / d54fff4734ffbb41f406003b931c0956a024e68f |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/9/testReport/ |
| Max. process+thread count | 8382 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server . U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/9/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 34s | Docker mode activated. | |
| _ Prechecks _ | ||||
| +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | |
| +0 :ok: | codespell | 0m 0s | codespell was not available. | |
| +0 :ok: | detsecrets | 0m 0s | detect-secrets was not available. | |
| +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | |
| +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | |
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 42s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 36s | master passed | |
| +1 :green_heart: | compile | 8m 16s | master passed | |
| +1 :green_heart: | checkstyle | 1m 14s | master passed | |
| +1 :green_heart: | spotbugs | 10m 31s | master passed | |
| +0 :ok: | refguide | 2m 27s | branch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | spotless | 0m 47s | branch has no errors when running spotless:check. | |
| -0 :warning: | patch | 1m 16s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 16s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 5s | the patch passed | |
| +1 :green_heart: | compile | 8m 18s | the patch passed | |
| +1 :green_heart: | javac | 8m 18s | the patch passed | |
| +1 :green_heart: | blanks | 0m 0s | The patch has no blanks issues. | |
| -0 :warning: | checkstyle | 0m 32s | /buildtool-patch-checkstyle-root.txt | The patch fails to run checkstyle in root |
| +1 :green_heart: | xmllint | 0m 0s | No new issues. | |
| +1 :green_heart: | spotbugs | 11m 0s | the patch passed | |
| +0 :ok: | refguide | 2m 3s | patch has no errors when building the reference guide. See footer for rendered docs, which you should manually inspect. | |
| +1 :green_heart: | hadoopcheck | 12m 7s | Patch does not cause any errors with Hadoop 3.3.6 3.4.1. | |
| +1 :green_heart: | spotless | 0m 45s | patch has no errors when running spotless:check. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | asflicense | 0m 44s | The patch does not generate ASF License warnings. | |
| 75m 36s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/10/artifact/yetus-general-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless xmllint refguide |
| uname | Linux 20f18c0a92f2 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 | master / 99ce0f0b1ae07d0e4f9dead86d1cf81232b28fc0 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/10/yetus-general-check/output/branch-site/book.html |
| refguide | https://nightlies.apache.org/hbase/HBase-PreCommit-GitHub-PR/PR-7291/10/yetus-general-check/output/patch-site/book.html |
| Max. process+thread count | 191 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server . U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/10/console |
| versions | git=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.
:confetti_ball: +1 overall
| Vote | Subsystem | Runtime | Logfile | Comment |
|---|---|---|---|---|
| +0 :ok: | reexec | 0m 32s | Docker mode activated. | |
| -0 :warning: | yetus | 0m 3s | Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck | |
| _ Prechecks _ | ||||
| _ master Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 23s | Maven dependency ordering for branch | |
| +1 :green_heart: | mvninstall | 3m 32s | master passed | |
| +1 :green_heart: | compile | 2m 11s | master passed | |
| +1 :green_heart: | javadoc | 3m 7s | master passed | |
| +1 :green_heart: | shadedjars | 6m 15s | branch has no errors when building our shaded downstream artifacts. | |
| -0 :warning: | patch | 6m 46s | Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary. | |
| _ Patch Compile Tests _ | ||||
| +0 :ok: | mvndep | 0m 16s | Maven dependency ordering for patch | |
| +1 :green_heart: | mvninstall | 3m 9s | the patch passed | |
| +1 :green_heart: | compile | 2m 16s | the patch passed | |
| +1 :green_heart: | javac | 2m 16s | the patch passed | |
| +1 :green_heart: | javadoc | 3m 8s | the patch passed | |
| +1 :green_heart: | shadedjars | 6m 16s | patch has no errors when building our shaded downstream artifacts. | |
| _ Other Tests _ | ||||
| +1 :green_heart: | unit | 291m 47s | root in the patch passed. | |
| 330m 55s |
| Subsystem | Report/Notes |
|---|---|
| Docker | ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/10/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile |
| GITHUB PR | https://github.com/apache/hbase/pull/7291 |
| Optional Tests | javac javadoc unit compile shadedjars |
| uname | Linux d59483981ca2 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 | master / 99ce0f0b1ae07d0e4f9dead86d1cf81232b28fc0 |
| Default Java | Eclipse Adoptium-17.0.11+9 |
| Test Results | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/10/testReport/ |
| Max. process+thread count | 7645 (vs. ulimit of 30000) |
| modules | C: hbase-common hbase-hadoop-compat hbase-client hbase-server . U: . |
| Console output | https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7291/10/console |
| versions | git=2.34.1 maven=3.9.8 |
| Powered by | Apache Yetus 0.15.0 https://yetus.apache.org |
This message was automatically generated.