You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2017/02/21 08:37:22 UTC
ignite git commit: ignite-4652 Fixed UpdateClosure for local cache.
Repository: ignite
Updated Branches:
refs/heads/ignite-4652 f71efda55 -> 59584e8af
ignite-4652 Fixed UpdateClosure for local cache.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/59584e8a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/59584e8a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/59584e8a
Branch: refs/heads/ignite-4652
Commit: 59584e8affc71cff669ccc84bf3792e41568296f
Parents: f71efda
Author: sboikov <sb...@gridgain.com>
Authored: Tue Feb 21 11:37:15 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Feb 21 11:37:15 2017 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/cache/GridCacheMapEntry.java | 9 +++++++--
.../processors/cache/IgniteCacheOffheapManager.java | 6 ++++++
.../processors/cache/IgniteCacheOffheapManagerImpl.java | 2 +-
3 files changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/59584e8a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
index 7118a8b..d28ea25 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
@@ -3823,6 +3823,9 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
private CacheDataRow newRow;
/** */
+ private CacheDataRow oldRow;
+
+ /** */
private IgniteTree.OperationType treeOp = IgniteTree.OperationType.PUT;
/**
@@ -3840,10 +3843,12 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
/** {@inheritDoc} */
@Override public void call(@Nullable CacheDataRow oldRow) throws IgniteCheckedException {
+ this.oldRow = oldRow;
+
if (oldRow != null)
oldRow.key(entry.key);
- newRow = entry.localPartition().dataStore().createRow(entry.key,
+ newRow = entry.cctx.offheap().dataStore(entry.localPartition()).createRow(entry.key,
val,
ver,
expireTime,
@@ -3865,7 +3870,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
/** {@inheritDoc} */
@Nullable @Override public CacheDataRow oldRow() {
- return null;
+ return oldRow;
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/59584e8a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManager.java
index 6143752..4a98f6a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManager.java
@@ -83,6 +83,12 @@ public interface IgniteCacheOffheapManager extends GridCacheManager {
public Iterable<CacheDataStore> cacheDataStores();
/**
+ * @param part Partition.
+ * @return Data store.
+ */
+ public CacheDataStore dataStore(GridDhtLocalPartition part);
+
+ /**
* @param p Partition ID.
* @param store Data store.
*/
http://git-wip-us.apache.org/repos/asf/ignite/blob/59584e8a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
index 660daf9..0b77f53 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
@@ -207,7 +207,7 @@ public class IgniteCacheOffheapManagerImpl extends GridCacheManagerAdapter imple
* @param part Partition.
* @return Data store for given entry.
*/
- private CacheDataStore dataStore(GridDhtLocalPartition part) {
+ public CacheDataStore dataStore(GridDhtLocalPartition part) {
if (cctx.isLocal())
return locCacheDataStore;
else {