This is an automated email from the ASF dual-hosted git repository.

imaxon pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git

commit d71f1002b8e7555899bbaf571ab2bd9ff023f0c3
Author: Ritik Raj <[email protected]>
AuthorDate: Thu Sep 18 13:02:15 2025 +0530

    [NO ISSUE][TEST] wait for io before bufferCache clean
    
    Ext-ref: MB-68268
    Change-Id: Id852530a3fd1e4dd1bec88eb481c695e1da9a0e9
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20392
    Integration-Tests: Jenkins <[email protected]>
    Reviewed-by: Ian Maxon <[email protected]>
    Tested-by: Ian Maxon <[email protected]>
---
 .../asterix/test/cloud_storage/CloudStorageSparseTest.java     | 10 ++++++++++
 .../test/runtime/SqlppSinglePartitionExecutionTest.java        | 10 ++++++++++
 2 files changed, 20 insertions(+)

diff --git 
a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/cloud_storage/CloudStorageSparseTest.java
 
b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/cloud_storage/CloudStorageSparseTest.java
index b7a264b34b..b930b660f5 100644
--- 
a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/cloud_storage/CloudStorageSparseTest.java
+++ 
b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/cloud_storage/CloudStorageSparseTest.java
@@ -23,8 +23,10 @@ import java.util.Collection;
 import java.util.List;
 
 import org.apache.asterix.api.common.LocalCloudUtilAdobeMock;
+import org.apache.asterix.common.api.IDatasetLifecycleManager;
 import org.apache.asterix.common.api.INcApplicationContext;
 import org.apache.asterix.common.config.GlobalConfig;
+import org.apache.asterix.common.storage.StorageIOStats;
 import org.apache.asterix.test.common.TestExecutor;
 import org.apache.asterix.test.runtime.ExecutionTestUtil;
 import org.apache.asterix.test.runtime.LangExecutionUtil;
@@ -117,6 +119,14 @@ public class CloudStorageSparseTest {
         List<TestCase.CompilationUnit> cu = 
tcCtx.getTestCase().getCompilationUnit();
         Assume.assumeTrue(cu.size() > 1 || 
!EXCLUDED_TESTS.equals(getText(cu.get(0).getDescription())));
         LangExecutionUtil.test(tcCtx);
+        for (NodeControllerService nc : ExecutionTestUtil.integrationUtil.ncs) 
{
+            IDatasetLifecycleManager lifecycleManager =
+                    ((INcApplicationContext) 
nc.getApplicationContext()).getDatasetLifecycleManager();
+            StorageIOStats stats = lifecycleManager.getDatasetsIOStats();
+            while (stats.getPendingFlushes() != 0 || stats.getPendingMerges() 
!= 0) {
+                stats = lifecycleManager.getDatasetsIOStats();
+            }
+        }
         IBufferCache bufferCache;
         for (NodeControllerService nc : ExecutionTestUtil.integrationUtil.ncs) 
{
             bufferCache = ((INcApplicationContext) 
nc.getApplicationContext()).getBufferCache();
diff --git 
a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/runtime/SqlppSinglePartitionExecutionTest.java
 
b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/runtime/SqlppSinglePartitionExecutionTest.java
index 6f19393a1d..4b322dc8ff 100644
--- 
a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/runtime/SqlppSinglePartitionExecutionTest.java
+++ 
b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/runtime/SqlppSinglePartitionExecutionTest.java
@@ -24,7 +24,9 @@ import java.util.Collection;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.apache.asterix.common.api.IDatasetLifecycleManager;
 import org.apache.asterix.common.api.INcApplicationContext;
+import org.apache.asterix.common.storage.StorageIOStats;
 import org.apache.asterix.test.common.TestExecutor;
 import org.apache.asterix.testframework.context.TestCaseContext;
 import org.apache.hyracks.control.nc.NodeControllerService;
@@ -71,6 +73,14 @@ public class SqlppSinglePartitionExecutionTest {
     @Test
     public void test() throws Exception {
         LangExecutionUtil.test(tcCtx);
+        for (NodeControllerService nc : ExecutionTestUtil.integrationUtil.ncs) 
{
+            IDatasetLifecycleManager lifecycleManager =
+                    ((INcApplicationContext) 
nc.getApplicationContext()).getDatasetLifecycleManager();
+            StorageIOStats stats = lifecycleManager.getDatasetsIOStats();
+            while (stats.getPendingFlushes() != 0 || stats.getPendingMerges() 
!= 0) {
+                stats = lifecycleManager.getDatasetsIOStats();
+            }
+        }
         IBufferCache bufferCache;
         for (NodeControllerService nc : ExecutionTestUtil.integrationUtil.ncs) 
{
             bufferCache = ((INcApplicationContext) 
nc.getApplicationContext()).getBufferCache();

Reply via email to