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

tkalkirill pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
     new 5d21abdf414 IGNITE-26244 Fix 
AbstractPageReplacementTest.testFsyncDeltaFilesWillNotStartOnCheckpointUntilPageReplacementIsComplete
 (#6514)
5d21abdf414 is described below

commit 5d21abdf414f66897f409fb535b151c3b141c890
Author: Kirill Tkalenko <[email protected]>
AuthorDate: Fri Aug 29 16:24:56 2025 +0300

    IGNITE-26244 Fix 
AbstractPageReplacementTest.testFsyncDeltaFilesWillNotStartOnCheckpointUntilPageReplacementIsComplete
 (#6514)
---
 .../replacement/AbstractPageReplacementTest.java        | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git 
a/modules/page-memory/src/test/java/org/apache/ignite/internal/pagememory/persistence/replacement/AbstractPageReplacementTest.java
 
b/modules/page-memory/src/test/java/org/apache/ignite/internal/pagememory/persistence/replacement/AbstractPageReplacementTest.java
index 13f8a2f0787..5337e7831d7 100644
--- 
a/modules/page-memory/src/test/java/org/apache/ignite/internal/pagememory/persistence/replacement/AbstractPageReplacementTest.java
+++ 
b/modules/page-memory/src/test/java/org/apache/ignite/internal/pagememory/persistence/replacement/AbstractPageReplacementTest.java
@@ -22,6 +22,7 @@ import static 
org.apache.ignite.internal.pagememory.persistence.checkpoint.Check
 import static org.apache.ignite.internal.pagememory.util.PageIdUtils.pageIndex;
 import static 
org.apache.ignite.internal.testframework.IgniteTestUtils.runAsync;
 import static 
org.apache.ignite.internal.testframework.matchers.CompletableFutureExceptionMatcher.willTimeoutFast;
+import static 
org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willBe;
 import static 
org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willCompleteSuccessfully;
 import static org.apache.ignite.internal.util.Constants.MiB;
 import static org.apache.ignite.internal.util.GridUnsafe.allocateBuffer;
@@ -74,7 +75,6 @@ import org.apache.ignite.internal.util.IgniteUtils;
 import org.apache.ignite.internal.util.OffheapReadWriteLock;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.ExtendWith;
 
@@ -236,7 +236,6 @@ public abstract class AbstractPageReplacementTest extends 
IgniteAbstractTest {
     }
 
     @Test
-    @Disabled("https://issues.apache.org/jira/browse/IGNITE-26244";)
     void 
testFsyncDeltaFilesWillNotStartOnCheckpointUntilPageReplacementIsComplete() 
throws Exception {
         var startWritePagesOnCheckpointFuture = new CompletableFuture<Void>();
         var continueWritePagesOnCheckpointFuture = new 
CompletableFuture<Void>();
@@ -292,6 +291,20 @@ public abstract class AbstractPageReplacementTest extends 
IgniteAbstractTest {
 
             doReturn(deltaFileIoFuture).when(filePageStore).getNewDeltaFile();
 
+            doAnswer(invocation -> {
+                assertThat(deltaFileIoFuture, willCompleteSuccessfully());
+
+                return deltaFileIoFuture.join();
+            }).doReturn(null).when(filePageStore).getDeltaFileToCompaction();
+
+            doAnswer(invocation -> {
+                DeltaFilePageStoreIo argument = invocation.getArgument(0);
+
+                assertThat(deltaFileIoFuture, willBe(argument));
+
+                return true;
+            }).when(filePageStore).removeDeltaFile(any());
+
             // Trigger checkpoint so that it writes a meta page and one dirty 
one. We do it under a read lock to ensure that the background
             // does not start after the lock is released.
             return checkpointManager.forceCheckpoint("for test");

Reply via email to