Repository: ignite
Updated Branches:
  refs/heads/ignite-5816 [created] bd9205086


IGNITE-5816 - Use last actual record position when closing the segment on 
flushOrWait()


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e4c102b1
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e4c102b1
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e4c102b1

Branch: refs/heads/ignite-5816
Commit: e4c102b10a55ba31cd8d06a2b0da2309fe6bce2b
Parents: 0d2992c
Author: Alexey Goncharuk <[email protected]>
Authored: Mon Jul 24 17:29:25 2017 +0300
Committer: Alexey Goncharuk <[email protected]>
Committed: Mon Jul 24 17:29:25 2017 +0300

----------------------------------------------------------------------
 .../cache/persistence/wal/FileWriteAheadLogManager.java       | 7 +++++++
 1 file changed, 7 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/e4c102b1/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java
index b655ddf..727f2df 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java
@@ -1800,6 +1800,13 @@ public class FileWriteAheadLogManager extends 
GridCacheSharedManagerAdapter impl
 
             if (flush(ptr, stop))
                 return;
+            else if (stop) {
+                FakeRecord fr = (FakeRecord)head.get();
+
+                assert fr.stop : "Invalid fake record on top of the queue: " + 
fr;
+
+                expWritten = recordOffset(fr);
+            }
 
             // Spin-wait for a while before acquiring the lock.
             for (int i = 0; i < 64; i++) {

Reply via email to