You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by dp...@apache.org on 2018/04/09 16:16:09 UTC
ignite git commit: IGNITE-8114 Additional fix for Add fail recovery
mechanism to tracking pages
Repository: ignite
Updated Branches:
refs/heads/master abfa0f50b -> 961fc35d2
IGNITE-8114 Additional fix for Add fail recovery mechanism to tracking pages
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/961fc35d
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/961fc35d
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/961fc35d
Branch: refs/heads/master
Commit: 961fc35d2bd4ef651e70e347e5e4f34ec3f42e41
Parents: abfa0f5
Author: Eduard Shangareev <es...@gridgain.com>
Authored: Mon Apr 9 19:15:50 2018 +0300
Committer: dpavlov <dp...@apache.org>
Committed: Mon Apr 9 19:15:50 2018 +0300
----------------------------------------------------------------------
.../cache/persistence/tree/io/TrackingPageIO.java | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/961fc35d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/TrackingPageIO.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/TrackingPageIO.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/TrackingPageIO.java
index 94885e4..80dbf25 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/TrackingPageIO.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/TrackingPageIO.java
@@ -86,9 +86,11 @@ public class TrackingPageIO extends PageIO {
* @param pageId Page id.
* @param nextSnapshotTag Tag of next snapshot.
* @param pageSize Page size.
+ *
+ * @return <code>-1</code> if everything is ok, otherwise last saved tag.
*/
- public void markChanged(ByteBuffer buf, long pageId, long nextSnapshotTag, long lastSuccessfulSnapshotTag, int pageSize) {
- validateSnapshotTag(buf, nextSnapshotTag, lastSuccessfulSnapshotTag, pageSize);
+ public long markChanged(ByteBuffer buf, long pageId, long nextSnapshotTag, long lastSuccessfulSnapshotTag, int pageSize) {
+ long tag = validateSnapshotTag(buf, nextSnapshotTag, lastSuccessfulSnapshotTag, pageSize);
int cntOfPage = countOfPageToTrack(pageSize);
@@ -105,7 +107,7 @@ public class TrackingPageIO extends PageIO {
byte newVal = (byte) (byteToUpdate | updateTemplate);
if (byteToUpdate == newVal)
- return;
+ return tag;
buf.put(idx, newVal);
@@ -114,6 +116,8 @@ public class TrackingPageIO extends PageIO {
buf.putShort(sizeOff, newSize);
assert newSize == countOfChangedPage(buf, nextSnapshotTag, pageSize);
+
+ return tag;
}
/**