From e6c501ba46d20d5f0d5479a0218208f306ee72ad Mon Sep 17 00:00:00 2001 From: Wellington Ramos Chevreuil Date: Mon, 18 May 2026 15:40:34 +0100 Subject: [PATCH 1/2] HBASE-30166: Attempt to fix flakeyness in TestPrefetchPersistence Change-Id: Ieebbfb897dac38da9e9a8376ae719d6609eee4fe --- .../io/hfile/bucket/TestPrefetchPersistence.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestPrefetchPersistence.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestPrefetchPersistence.java index ac3a1eca8845..f8010e28041d 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestPrefetchPersistence.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestPrefetchPersistence.java @@ -41,6 +41,7 @@ import org.apache.hadoop.hbase.regionserver.StoreFileWriter; import org.apache.hadoop.hbase.testclassification.IOTests; import org.apache.hadoop.hbase.testclassification.LargeTests; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Tag; import org.junit.jupiter.api.TestTemplate; @@ -127,15 +128,21 @@ public void testPrefetchPersistence() throws Exception { assertTrue(usedSize != 0); assertTrue(bucketCache.fullyCachedFiles.containsKey(storeFile.getName())); assertTrue(bucketCache.fullyCachedFiles.containsKey(storeFile2.getName())); + } + + @AfterEach + public void cleanup() { TEST_UTIL.cleanupTestDir(); } public void readStoreFile(Path storeFilePath) throws Exception { // Open the file HFile.Reader reader = HFile.createReader(fs, storeFilePath, cacheConf, true, conf); - while (!reader.prefetchComplete()) { - // Sleep for a bit - Thread.sleep(1000); + int retries = 0; + while (!reader.prefetchComplete() + && !bucketCache.fullyCachedFiles.containsKey(storeFilePath.getName()) && retries < 5) { + Thread.sleep(500); + retries++; } } From 1c9efde2ca2d74038698050610eaa9861c7e83c8 Mon Sep 17 00:00:00 2001 From: Wellington Ramos Chevreuil Date: Tue, 19 May 2026 10:56:54 +0100 Subject: [PATCH 2/2] spotless Change-Id: Ia9766d11ee8191d2bf824f65e84b924c7c408260 --- .../hbase/io/hfile/bucket/TestPrefetchPersistence.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestPrefetchPersistence.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestPrefetchPersistence.java index f8010e28041d..620c153895a7 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestPrefetchPersistence.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestPrefetchPersistence.java @@ -139,8 +139,10 @@ public void readStoreFile(Path storeFilePath) throws Exception { // Open the file HFile.Reader reader = HFile.createReader(fs, storeFilePath, cacheConf, true, conf); int retries = 0; - while (!reader.prefetchComplete() - && !bucketCache.fullyCachedFiles.containsKey(storeFilePath.getName()) && retries < 5) { + while ( + !reader.prefetchComplete() + && !bucketCache.fullyCachedFiles.containsKey(storeFilePath.getName()) && retries < 5 + ) { Thread.sleep(500); retries++; }