You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2018/10/30 09:07:57 UTC

ignite git commit: IGNITE-10042: MVCC: Fixed TxLog page types. This closes #5193.

Repository: ignite
Updated Branches:
  refs/heads/master f8c9e90c7 -> d5035bb23


IGNITE-10042: MVCC: Fixed TxLog page types. This closes #5193.


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

Branch: refs/heads/master
Commit: d5035bb23c25b02f814a03303dfa7ce682f2cada
Parents: f8c9e90
Author: AMRepo <an...@gmail.com>
Authored: Tue Oct 30 12:07:49 2018 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Tue Oct 30 12:07:49 2018 +0300

----------------------------------------------------------------------
 .../processors/cache/mvcc/txlog/TxLog.java      | 40 ++++++++++----------
 1 file changed, 20 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/d5035bb2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/txlog/TxLog.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/txlog/TxLog.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/txlog/TxLog.java
index 61d9cc6..03eb659 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/txlog/TxLog.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/txlog/TxLog.java
@@ -37,7 +37,7 @@ import org.apache.ignite.internal.processors.cache.persistence.pagemem.PageMemor
 import org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree;
 import org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusIO;
 import org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO;
-import org.apache.ignite.internal.processors.cache.persistence.tree.io.PagePartitionMetaIO;
+import org.apache.ignite.internal.processors.cache.persistence.tree.io.PageMetaIO;
 import org.apache.ignite.internal.processors.cache.persistence.tree.reuse.ReuseList;
 import org.apache.ignite.internal.processors.cache.persistence.tree.reuse.ReuseListImpl;
 import org.apache.ignite.internal.processors.cache.persistence.tree.util.PageHandler;
@@ -100,36 +100,36 @@ public class TxLog implements DbCheckpointListener {
                 IgniteWriteAheadLogManager wal = ctx.cache().context().wal();
                 PageMemoryEx pageMemory = (PageMemoryEx)mgr.dataRegion(TX_LOG_CACHE_NAME).pageMemory();
 
-                long partMetaId = pageMemory.partitionMetaPageId(TX_LOG_CACHE_ID, 0);
-                long partMetaPage = pageMemory.acquirePage(TX_LOG_CACHE_ID, partMetaId);
+                long metaId = pageMemory.metaPageId(TX_LOG_CACHE_ID);
+                long metaPage = pageMemory.acquirePage(TX_LOG_CACHE_ID, metaId);
 
                 long treeRoot, reuseListRoot;
 
                 boolean isNew = false;
 
                 try {
-                    long pageAddr = pageMemory.writeLock(TX_LOG_CACHE_ID, partMetaId, partMetaPage);
+                    long pageAddr = pageMemory.writeLock(TX_LOG_CACHE_ID, metaId, metaPage);
 
                     try {
-                        if (PageIO.getType(pageAddr) != PageIO.T_PART_META) {
+                        if (PageIO.getType(pageAddr) != PageIO.T_META) {
                             // Initialize new page.
-                            PagePartitionMetaIO io = PagePartitionMetaIO.VERSIONS.latest();
+                            PageMetaIO io = PageMetaIO.VERSIONS.latest();
 
-                            io.initNewPage(pageAddr, partMetaId, pageMemory.pageSize());
+                            io.initNewPage(pageAddr, metaId, pageMemory.pageSize());
 
-                            treeRoot = pageMemory.allocatePage(TX_LOG_CACHE_ID, 0, PageMemory.FLAG_DATA);
-                            reuseListRoot = pageMemory.allocatePage(TX_LOG_CACHE_ID, 0, PageMemory.FLAG_DATA);
+                            treeRoot = pageMemory.allocatePage(TX_LOG_CACHE_ID, INDEX_PARTITION, PageMemory.FLAG_IDX);
+                            reuseListRoot = pageMemory.allocatePage(TX_LOG_CACHE_ID, INDEX_PARTITION, PageMemory.FLAG_IDX);
 
-                            assert PageIdUtils.flag(treeRoot) == PageMemory.FLAG_DATA;
-                            assert PageIdUtils.flag(reuseListRoot) == PageMemory.FLAG_DATA;
+                            assert PageIdUtils.flag(treeRoot) == PageMemory.FLAG_IDX;
+                            assert PageIdUtils.flag(reuseListRoot) == PageMemory.FLAG_IDX;
 
                             io.setTreeRoot(pageAddr, treeRoot);
                             io.setReuseListRoot(pageAddr, reuseListRoot);
 
-                            if (PageHandler.isWalDeltaRecordNeeded(pageMemory, TX_LOG_CACHE_ID, partMetaId, partMetaPage, wal, null))
+                            if (PageHandler.isWalDeltaRecordNeeded(pageMemory, TX_LOG_CACHE_ID, metaId, metaPage, wal, null))
                                 wal.log(new MetaPageInitRecord(
                                     TX_LOG_CACHE_ID,
-                                    partMetaId,
+                                    metaId,
                                     io.getType(),
                                     io.getVersion(),
                                     treeRoot,
@@ -139,23 +139,23 @@ public class TxLog implements DbCheckpointListener {
                             isNew = true;
                         }
                         else {
-                            PagePartitionMetaIO io = PageIO.getPageIO(pageAddr);
+                            PageMetaIO io = PageIO.getPageIO(pageAddr);
 
                             treeRoot = io.getTreeRoot(pageAddr);
                             reuseListRoot = io.getReuseListRoot(pageAddr);
 
-                            assert PageIdUtils.flag(treeRoot) == PageMemory.FLAG_DATA :
-                                U.hexLong(treeRoot) + ", part=" + 0 + ", TX_LOG_CACHE_ID=" + TX_LOG_CACHE_ID;
-                            assert PageIdUtils.flag(reuseListRoot) == PageMemory.FLAG_DATA :
-                                U.hexLong(reuseListRoot) + ", part=" + 0 + ", TX_LOG_CACHE_ID=" + TX_LOG_CACHE_ID;
+                            assert PageIdUtils.flag(treeRoot) == PageMemory.FLAG_IDX :
+                                U.hexLong(treeRoot) + ", TX_LOG_CACHE_ID=" + TX_LOG_CACHE_ID;
+                            assert PageIdUtils.flag(reuseListRoot) == PageMemory.FLAG_IDX :
+                                U.hexLong(reuseListRoot) + ", TX_LOG_CACHE_ID=" + TX_LOG_CACHE_ID;
                         }
                     }
                     finally {
-                        pageMemory.writeUnlock(TX_LOG_CACHE_ID, partMetaId, partMetaPage, null, isNew);
+                        pageMemory.writeUnlock(TX_LOG_CACHE_ID, metaId, metaPage, null, isNew);
                     }
                 }
                 finally {
-                    pageMemory.releasePage(TX_LOG_CACHE_ID, partMetaId, partMetaPage);
+                    pageMemory.releasePage(TX_LOG_CACHE_ID, metaId, metaPage);
                 }
 
                 reuseList = new ReuseListImpl(