Merge remote-tracking branch 'remotes/origin/master' into ignite-db-x-10884
Conflicts:
modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java
modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSharedContext.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSwapManager.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
modules/core/src/test/java/org/apache/ignite/testsuites/IgniteKernalSelfTestSuite.java
pom.xml
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ce4698f2
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ce4698f2
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ce4698f2
Branch: refs/heads/ignite-db-x-10884
Commit: ce4698f2d02a73e9e13415487b3195ad0125629e
Parents: 1643a7c
Author: sboikov <[email protected]>
Authored: Fri Apr 22 15:29:05 2016 +0300
Committer: sboikov <[email protected]>
Committed: Fri Apr 22 15:29:05 2016 +0300
----------------------------------------------------------------------
.../swapspace/GridSwapSpaceManager.java | 9 ---
.../cache/CacheObjectOffheapImpl.java | 5 ++
.../processors/cache/GridCacheAdapter.java | 5 +-
.../processors/cache/GridCacheMapEntry.java | 35 ++++------
.../processors/cache/GridCacheProcessor.java | 45 -------------
.../cache/IgniteCacheOffheapManager.java | 68 +++++++++++---------
.../distributed/dht/GridDhtCacheAdapter.java | 4 +-
.../dht/GridDhtTransactionalCacheAdapter.java | 4 +-
.../dht/GridPartitionedGetFuture.java | 5 +-
.../dht/GridPartitionedSingleGetFuture.java | 5 +-
.../dht/atomic/GridDhtAtomicCache.java | 7 +-
.../dht/colocated/GridDhtColocatedCache.java | 5 +-
.../distributed/near/GridNearGetFuture.java | 10 ++-
.../local/atomic/GridLocalAtomicCache.java | 17 +++--
.../cache/query/GridCacheQueryManager.java | 4 +-
.../cache/transactions/IgniteTxAdapter.java | 4 +-
.../transactions/IgniteTxLocalAdapter.java | 32 ++++++---
.../internal/visor/cache/VisorCacheV3.java | 7 +-
.../testsuites/IgniteKernalSelfTestSuite.java | 1 -
19 files changed, 138 insertions(+), 134 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
b/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
index 437603a..6589f41 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
@@ -107,15 +107,6 @@ public class GridSwapSpaceManager extends
GridManagerAdapter<SwapSpaceSpi> {
ctx.event().record(new
SwapSpaceEvent(ctx.discovery().localNode(), msg, evtType, spaceName));
}
-
- // Always notify grid cache processor.
- if (evtType == EVT_SWAP_SPACE_DATA_EVICTED && spaceName !=
null) {
- assert keyBytes != null;
- assert valBytes != null;
-
- // Cache cannot use default swap space.
- ctx.cache().onEvictFromSwap(spaceName, keyBytes, valBytes);
- }
}
});
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectOffheapImpl.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectOffheapImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectOffheapImpl.java
index 1a9bb95..f93f92b 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectOffheapImpl.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectOffheapImpl.java
@@ -122,4 +122,9 @@ public class CacheObjectOffheapImpl implements CacheObject {
@Override public byte fieldsCount() {
return 0;
}
+
+ /** {@inheritDoc} */
+ @Override public void onAckReceived() {
+ // No-op.
+ }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index 9b13609..a3798d3 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@ -1873,7 +1873,9 @@ public abstract class GridCacheAdapter<K, V> implements
IgniteInternalCache<K, V
}
try {
- T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(null,
+ T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(
+ null,
+ null,
/*update-metrics*/!skipVals,
/*event*/!skipVals,
subjId,
@@ -4687,6 +4689,7 @@ public abstract class GridCacheAdapter<K, V> implements
IgniteInternalCache<K, V
{
CacheObject val = entry.innerGet(
null,
+ null,
false,
false,
false,
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/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 a60ca8e..081e8d6 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
@@ -41,6 +41,7 @@ import
org.apache.ignite.internal.processors.cache.extras.GridCacheEntryExtras;
import
org.apache.ignite.internal.processors.cache.extras.GridCacheMvccEntryExtras;
import
org.apache.ignite.internal.processors.cache.extras.GridCacheObsoleteEntryExtras;
import
org.apache.ignite.internal.processors.cache.extras.GridCacheTtlEntryExtras;
+import
org.apache.ignite.internal.processors.cache.query.continuous.CacheContinuousQueryListener;
import
org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxKey;
@@ -388,7 +389,7 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
CacheObject idxVal = read.get1();
// Set unswapped value.
- update(idxVal, 0, 0, read.get2());
+ update(idxVal, 0, 0, read.get2(), false);
return idxVal;
}
@@ -524,7 +525,9 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
@Nullable IgniteCacheExpiryPolicy expiryPlc,
boolean keepBinary)
throws IgniteCheckedException, GridCacheEntryRemovedException {
- return (T2<CacheObject, GridCacheVersion>)innerGet0(tx,
+ return (T2<CacheObject, GridCacheVersion>)innerGet0(
+ ver,
+ tx,
false,
evt,
updateMetrics,
@@ -699,12 +702,9 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
}
}
- if (ret != null) {
- assert tmp || !(ret instanceof BinaryObjectOffheapImpl);
-
+ if (ret != null)
// If return value is consistent, then done.
return retVer ? new T2<>(ret, resVer) : ret;
- }
boolean loadedFromStore = false;
@@ -770,7 +770,6 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
}
assert ret == null || !retVer;
- assert tmp || !(ret instanceof BinaryObjectOffheapImpl);
return ret;
}
@@ -1111,6 +1110,8 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
assert tx == null || (!tx.local() && tx.onePhaseCommit()) ||
tx.ownsLock(this) :
"Transaction does not own lock for remove[entry=" + this + ",
tx=" + tx + ']';
+ boolean startVer = isStartVersion();
+
newVer = explicitVer != null ? explicitVer : tx == null ?
nextVersion() : tx.writeVersion();
boolean internal = isInternal() || !context().userCache();
@@ -1118,7 +1119,9 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
Map<UUID, CacheContinuousQueryListener> lsnrCol =
notifyContinuousQueries(tx) ?
cctx.continuousQueries().updateListeners(internal, false) : null;
- // TODO GG-10884 need unswap?.
+ if (startVer && (retval || intercept || lsnrCol != null))
+ unswap();
+
old = val;
if (intercept) {
@@ -2416,13 +2419,7 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
if (log.isDebugEnabled())
log.debug("Entry has been marked obsolete: " + this);
- removeValue(val, ver);
-
- ret = true;
- rmv = true;
-
- break;
- }
+ removeValue(val, ver);
}
onMarkedObsolete();
@@ -2726,7 +2723,7 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
ttlAndExpireTimeExtras(ttl, expireTime);
- if (cctx.isSwapOrOffheapEnabled())
+ if (cctx.isOffHeapEnabled())
flags |= IS_SWAPPING_REQUIRED;
if (expireTime != 0 && expireTime != oldExpireTime &&
cctx.config().isEagerTtl())
@@ -3095,8 +3092,6 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
if (newVer == null)
newVer = cctx.versions().next();
- CacheObject old = this.val;
-
long ttl = ttlExtras();
long expTime = CU.toExpireTime(ttl);
@@ -3631,7 +3626,7 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
/** {@inheritDoc} */
@Override public boolean evictInternal(GridCacheVersion obsoleteVer,
@Nullable CacheEntryPredicate[] filter) throws IgniteCheckedException {
- // TODO GG-10884: evictions from offheap are not supported.
+ // TODO GG-10884: evictions from offheap(pagememory) are not supported.
boolean marked = false;
@@ -3647,8 +3642,6 @@ public abstract class GridCacheMapEntry extends
GridMetadataAwareAdapter impleme
if (obsoleteVersionExtras() != null)
return true;
- CacheObject prev = saveOldValueUnlocked(false);
-
if (!hasReaders() && markObsolete0(obsoleteVer, false,
null)) {
// Nullify value after swap.
value(null);
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
index 0ca9b21..bbc1283 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
@@ -2956,51 +2956,6 @@ public class GridCacheProcessor extends
GridProcessorAdapter {
}
/**
- * @param spaceName Space name.
- * @param keyBytes Key bytes.
- * @param valBytes Value bytes.
- */
- @SuppressWarnings({"unchecked"})
- public void onEvictFromSwap(String spaceName, byte[] keyBytes, byte[]
valBytes) {
- assert spaceName != null;
- assert keyBytes != null;
- assert valBytes != null;
-
- /*
- * NOTE: this method should not have any synchronization because
- * it is called from synchronization block within Swap SPI.
- */
-
- GridCacheAdapter cache =
caches.get(maskNull(CU.cacheNameForSwapSpaceName(spaceName)));
-
- assert cache != null : "Failed to resolve cache name for swap space
name: " + spaceName;
-
- GridCacheContext cctx = cache.configuration().getCacheMode() ==
PARTITIONED ?
- ((GridNearCacheAdapter<?, ?>)cache).dht().context() :
cache.context();
-
- if (spaceName.equals(CU.swapSpaceName(cctx))) {
- GridCacheQueryManager qryMgr = cctx.queries();
-
- if (qryMgr.enabled()) {
- try {
- KeyCacheObject key = cctx.toCacheKeyObject(keyBytes);
-
- CacheObject val =
cctx.swap().unmarshalSwapEntryValue(valBytes);
-
- assert val != null;
-
- // TODO sql-store
-
- qryMgr.remove(key, cctx.affinity().partition(key), val,
null);
- }
- catch (IgniteCheckedException e) {
- U.error(log, "Failed to unmarshal key evicted from swap
[swapSpaceName=" + spaceName + ']', e);
- }
- }
- }
- }
-
- /**
* @param cfg Cache configuration.
* @return Query manager.
*/
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/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 510c47e..04736cd 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
@@ -79,8 +79,11 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
this.indexingEnabled = indexingEnabled;
}
- /** {@inheritDoc} */
- @Override protected void start0() throws IgniteCheckedException {
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected void start0() throws IgniteCheckedException {
super.start0();
IgniteCacheDatabaseSharedManager dbMgr = cctx.shared().database();
@@ -92,8 +95,11 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
dataTree = new CacheDataTree(rowStore, cctx, dbMgr.pageMemory(),
page.get1(), page.get2());
}
- /** {@inheritDoc} */
- @Override protected void onKernalStart0() throws IgniteCheckedException {
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected void onKernalStart0() throws IgniteCheckedException {
super.onKernalStart0();
}
@@ -103,8 +109,7 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
public boolean containsKey(KeyCacheObject key, int part) {
try {
return read(key, part) != null;
- }
- catch (IgniteCheckedException e) {
+ } catch (IgniteCheckedException e) {
U.error(log, "Failed to read value", e);
return false;
@@ -112,17 +117,17 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
}
/**
- * @param key Key.
- * @param val Value.
- * @param ver Version.
+ * @param key Key.
+ * @param val Value.
+ * @param ver Version.
* @param part Partition.
* @throws IgniteCheckedException If failed.
*/
public void update(KeyCacheObject key,
- CacheObject val,
- GridCacheVersion ver,
- long expireTime,
- int part) throws IgniteCheckedException {
+ CacheObject val,
+ GridCacheVersion ver,
+ long expireTime,
+ int part) throws IgniteCheckedException {
if (indexingEnabled) {
GridCacheQueryManager qryMgr = cctx.queries();
@@ -163,12 +168,13 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
}
/**
- * @param key Key to read.
+ * @param key Key to read.
* @param part Partition.
* @return Value tuple, if available.
* @throws IgniteCheckedException If failed.
*/
- @Nullable public IgniteBiTuple<CacheObject, GridCacheVersion>
read(KeyCacheObject key, int part)
+ @Nullable
+ public IgniteBiTuple<CacheObject, GridCacheVersion> read(KeyCacheObject
key, int part)
throws IgniteCheckedException {
if (indexingEnabled)
return cctx.queries().read(key, part);
@@ -178,7 +184,8 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
return dataRow != null ? F.t(dataRow.val, dataRow.ver) : null;
}
- @Nullable CacheObject readValue(KeyCacheObject key, int part) throws
IgniteCheckedException {
+ @Nullable
+ CacheObject readValue(KeyCacheObject key, int part) throws
IgniteCheckedException {
IgniteBiTuple<CacheObject, GridCacheVersion> t = read(key, part);
return t != null ? t.get1() : null;
@@ -207,7 +214,7 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
}
/**
- * @param tree Tree.
+ * @param tree Tree.
* @param readers {@code True} to clear readers.
*/
private void clear(BPlusTree<?, ? extends CacheDataRow> tree, boolean
readers) {
@@ -231,33 +238,30 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
GridCacheEntryEx entry = cctx.cache().entryEx(key);
- entry.clear(obsoleteVer, readers, null);
- }
- catch (GridDhtInvalidPartitionException ignore) {
+ entry.clear(obsoleteVer, readers);
+ } catch (GridDhtInvalidPartitionException ignore) {
// Ignore.
- }
- catch (IgniteCheckedException e) {
+ } catch (IgniteCheckedException e) {
U.error(log, "Failed to clear cache entry: " + key, e);
}
}
- }
- catch (IgniteCheckedException e) {
+ } catch (IgniteCheckedException e) {
U.error(log, "Failed to clear cache entries.", e);
}
}
/**
- * @param tree Tree.
+ * @param tree Tree.
* @param primary Include primary node keys.
- * @param backup Include backup node keys.
- * @param topVer Topology version.
+ * @param backup Include backup node keys.
+ * @param topVer Topology version.
* @return Entries count.
* @throws IgniteCheckedException If failed.
*/
private long entriesCount(BPlusTree<?, ? extends CacheDataRow> tree,
- boolean primary,
- boolean backup,
- AffinityTopologyVersion topVer) throws IgniteCheckedException {
+ boolean primary,
+ boolean backup,
+ AffinityTopologyVersion topVer) throws
IgniteCheckedException {
GridCursor<? extends CacheDataRow> cur = tree.find(null, null);
ClusterNode locNode = cctx.localNode();
@@ -284,6 +288,10 @@ public class IgniteCacheOffheapManager extends
GridCacheManagerAdapter {
return cnt;
}
+ public long entriesCount(int part) {
+ return 0;
+ }
+
/**
* @param primary Include primary node keys.
* @param backup Include backup node keys.
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
index c6f773b..0ca22b7 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
@@ -1012,6 +1012,8 @@ public abstract class GridDhtCacheAdapter<K, V> extends
GridDistributedCacheAdap
entry.unswap(false);
+ entry.updateTtl(vers.get(i), ttl);
+
break;
}
catch (GridCacheEntryRemovedException e) {
@@ -1025,8 +1027,6 @@ public abstract class GridDhtCacheAdapter<K, V> extends
GridDistributedCacheAdap
break;
}
}
-
- entry.updateTtl(vers.get(i), ttl);
}
finally {
if (entry != null)
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
index e8f30c2..6419bc9 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
@@ -1126,7 +1126,9 @@ public abstract class GridDhtTransactionalCacheAdapter<K,
V> extends GridDhtCach
CacheObject val = null;
if (ret)
- val = e.innerGet(tx,
+ val = e.innerGet(
+ null,
+ tx,
/*read-through*/false,
/*update-metrics*/true,
/*event
notification*/req.returnValue(i),
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
index 0cacb40..18d9c16 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
@@ -451,6 +451,7 @@ public class GridPartitionedGetFuture<K, V> extends
CacheDistributedGetFutureAda
if (needVer) {
T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(
null,
+ null,
/**update-metrics*/false,
/*event*/!skipVals,
subjId,
@@ -465,7 +466,9 @@ public class GridPartitionedGetFuture<K, V> extends
CacheDistributedGetFutureAda
}
}
else {
- v = entry.innerGet(null,
+ v = entry.innerGet(
+ null,
+ null,
/*read-through*/false,
/**update-metrics*/false,
/*event*/!skipVals,
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
index ea69307..af0fa6d 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
@@ -374,6 +374,7 @@ public class GridPartitionedSingleGetFuture extends
GridFutureAdapter<Object> im
if (needVer) {
T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(
null,
+ null,
/**update-metrics*/false,
/*event*/!skipVals,
subjId,
@@ -388,7 +389,9 @@ public class GridPartitionedSingleGetFuture extends
GridFutureAdapter<Object> im
}
}
else {
- v = entry.innerGet(null,
+ v = entry.innerGet(
+ null,
+ null,
/*read-through*/false,
/**update-metrics*/false,
/*event*/!skipVals,
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
index ee3b7da..4885180 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
@@ -1332,6 +1332,7 @@ public class GridDhtAtomicCache<K, V> extends
GridDhtCacheAdapter<K, V> {
if (needVer) {
T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(
null,
+ null,
/**update-metrics*/false,
/*event*/!skipVals,
subjId,
@@ -1346,7 +1347,9 @@ public class GridDhtAtomicCache<K, V> extends
GridDhtCacheAdapter<K, V> {
}
}
else {
- v = entry.innerGet(null,
+ v = entry.innerGet(
+ null,
+ null,
/*read-through*/false,
/**update-metrics*/false,
/*event*/!skipVals,
@@ -1923,6 +1926,7 @@ public class GridDhtAtomicCache<K, V> extends
GridDhtCacheAdapter<K, V> {
if (intercept) {
CacheObject old = entry.innerGet(
+ null,
null,
/*read through*/ctx.loadPreviousValue(),
/*metrics*/true,
@@ -1959,6 +1963,7 @@ public class GridDhtAtomicCache<K, V> extends
GridDhtCacheAdapter<K, V> {
if (intercept) {
CacheObject old = entry.innerGet(
null,
+ null,
/*read through*/ctx.loadPreviousValue(),
/*metrics*/true,
/*event*/true,
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
index 549b4f5..da5677a 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
@@ -484,6 +484,7 @@ public class GridDhtColocatedCache<K, V> extends
GridDhtTransactionalCacheAdapte
if (needVer) {
T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(
null,
+ null,
/**update-metrics*/false,
/*event*/!skipVals,
subjId,
@@ -498,7 +499,9 @@ public class GridDhtColocatedCache<K, V> extends
GridDhtTransactionalCacheAdapte
}
}
else {
- v = entry.innerGet(null,
+ v = entry.innerGet(
+ null,
+ null,
/*read-through*/false,
/**update-metrics*/false,
/*event*/!skipVals,
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
index a3fac8c..6d8720a 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetFuture.java
@@ -441,6 +441,7 @@ public final class GridNearGetFuture<K, V> extends
CacheDistributedGetFutureAdap
if (needVer) {
T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(
null,
+ null,
/**update-metrics*/true,
/*event*/!skipVals,
subjId,
@@ -455,7 +456,9 @@ public final class GridNearGetFuture<K, V> extends
CacheDistributedGetFutureAdap
}
}
else {
- v = entry.innerGet(tx,
+ v = entry.innerGet(
+ null,
+ tx,
/*read-through*/false,
/*metrics*/true,
/*events*/!skipVals,
@@ -574,6 +577,7 @@ public final class GridNearGetFuture<K, V> extends
CacheDistributedGetFutureAdap
if (needVer) {
T2<CacheObject, GridCacheVersion> res =
dhtEntry.innerGetVersioned(
null,
+ null,
/**update-metrics*/false,
/*event*/!nearRead && !skipVals,
subjId,
@@ -588,7 +592,9 @@ public final class GridNearGetFuture<K, V> extends
CacheDistributedGetFutureAdap
}
}
else {
- v = dhtEntry.innerGet(tx,
+ v = dhtEntry.innerGet(
+ null,
+ tx,
/*read-through*/false,
/*update-metrics*/false,
/*events*/!nearRead && !skipVals,
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
index e928cce..3df932d 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
@@ -531,6 +531,7 @@ public class GridLocalAtomicCache<K, V> extends
GridCacheAdapter<K, V> {
if (needVer) {
T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(
null,
+ null,
/**update-metrics*/false,
/*event*/!skipVals,
subjId,
@@ -556,7 +557,9 @@ public class GridLocalAtomicCache<K, V> extends
GridCacheAdapter<K, V> {
success = false;
}
else {
- v = entry.innerGet(null,
+ v = entry.innerGet(
+ null,
+ null,
/*read-through*/false,
/**update-metrics*/true,
/**event*/!skipVals,
@@ -1111,7 +1114,9 @@ public class GridLocalAtomicCache<K, V> extends
GridCacheAdapter<K, V> {
EntryProcessor<Object, Object, Object> entryProcessor =
(EntryProcessor<Object, Object, Object>)val;
- CacheObject old = entry.innerGet(null,
+ CacheObject old = entry.innerGet(
+ null,
+ null,
/*read-through*/true,
/**update-metrics*/true,
/**event*/true,
@@ -1229,7 +1234,9 @@ public class GridLocalAtomicCache<K, V> extends
GridCacheAdapter<K, V> {
CacheObject cacheVal = ctx.toCacheObject(val);
if (intercept) {
- CacheObject old = entry.innerGet(null,
+ CacheObject old = entry.innerGet(
+ null,
+ null,
/*read-through*/ctx.loadPreviousValue(),
/**update-metrics*/true,
/**event*/true,
@@ -1260,7 +1267,9 @@ public class GridLocalAtomicCache<K, V> extends
GridCacheAdapter<K, V> {
assert op == DELETE;
if (intercept) {
- CacheObject old = entry.innerGet(null,
+ CacheObject old = entry.innerGet(
+ null,
+ null,
/*read-through*/ctx.loadPreviousValue(),
/**update-metrics*/true,
/**event*/true,
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
index f283723..17af4ba 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
@@ -1003,7 +1003,7 @@ public abstract class GridCacheQueryManager<K, V> extends
GridCacheManagerAdapte
qry.keepBinary());
}
- if (cctx.offheapTiered() && filter != null) {
+ if (cctx.isOffHeapEnabled() && filter != null) {
OffheapIteratorClosure c = new OffheapIteratorClosure(filter,
qry.keepBinary());
return cctx.swap().rawOffHeapIterator(c, qry.partition(), true,
backups);
@@ -2574,7 +2574,7 @@ public abstract class GridCacheQueryManager<K, V> extends
GridCacheManagerAdapte
@Override protected V unmarshalValue() throws IgniteCheckedException {
long ptr = GridCacheOffheapSwapEntry.valueAddress(valPtr.get1(),
valPtr.get2());
- return (V)cctx.fromOffheap(ptr, false);
+ return null;//(V)cctx.fromOffheap(ptr, false);
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
index 57359cf..26a24a3 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
@@ -1245,7 +1245,9 @@ public abstract class IgniteTxAdapter extends
GridMetadataAwareAdapter implement
final boolean keepBinary = txEntry.keepBinary();
CacheObject cacheVal = txEntry.hasValue() ? txEntry.value() :
- txEntry.cached().innerGet(this,
+ txEntry.cached().innerGet(
+ null,
+ this,
/*read through*/false,
/*metrics*/metrics,
/*event*/recordEvt,
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
index 76b2b71..2d06947 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
@@ -441,7 +441,9 @@ public abstract class IgniteTxLocalAdapter extends
IgniteTxAdapter implements Ig
continue;
try {
- T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(this,
+ T2<CacheObject, GridCacheVersion> res =
entry.innerGetVersioned(
+ null,
+ this,
/*update-metrics*/!skipVals,
/*event*/!skipVals,
CU.subjectId(this, cctx),
@@ -1457,7 +1459,9 @@ public abstract class IgniteTxLocalAdapter extends
IgniteTxAdapter implements Ig
}
}
else {
- val = txEntry.cached().innerGet(this,
+ val = txEntry.cached().innerGet(
+ null,
+ this,
/*read-through*/false,
/*metrics*/true,
/*event*/!skipVals,
@@ -1518,7 +1522,9 @@ public abstract class IgniteTxLocalAdapter extends
IgniteTxAdapter implements Ig
if (needReadVer) {
T2<CacheObject, GridCacheVersion> res =
primaryLocal(entry) ?
- entry.innerGetVersioned(this,
+ entry.innerGetVersioned(
+ null,
+ this,
/*metrics*/true,
/*event*/true,
CU.subjectId(this, cctx),
@@ -1533,7 +1539,9 @@ public abstract class IgniteTxLocalAdapter extends
IgniteTxAdapter implements Ig
}
}
else {
- val = entry.innerGet(this,
+ val = entry.innerGet(
+ null,
+ this,
/*no read-through*/false,
/*metrics*/true,
/*event*/true,
@@ -1868,7 +1876,9 @@ public abstract class IgniteTxLocalAdapter extends
IgniteTxAdapter implements Ig
}
}
else{
- val =
cached.innerGet(IgniteTxLocalAdapter.this,
+ val = cached.innerGet(
+ null,
+ IgniteTxLocalAdapter.this,
/*read-through*/false,
/*metrics*/true,
/*events*/!skipVals,
@@ -2559,7 +2569,9 @@ public abstract class IgniteTxLocalAdapter extends
IgniteTxAdapter implements Ig
try {
if (needReadVer) {
T2<CacheObject, GridCacheVersion> res =
primaryLocal(entry) ?
- entry.innerGetVersioned(this,
+ entry.innerGetVersioned(
+ null,
+ this,
/*metrics*/retval,
/*events*/retval,
CU.subjectId(this, cctx),
@@ -2574,7 +2586,9 @@ public abstract class IgniteTxLocalAdapter extends
IgniteTxAdapter implements Ig
}
}
else {
- old = entry.innerGet(this,
+ old = entry.innerGet(
+ null,
+ this,
/*read-through*/false,
/*metrics*/retval,
/*events*/retval,
@@ -2874,7 +2888,9 @@ public abstract class IgniteTxLocalAdapter extends
IgniteTxAdapter implements Ig
boolean readThrough =
(invoke || cacheCtx.loadPreviousValue())
&& !txEntry.skipStore();
- v = cached.innerGet(this,
+ v = cached.innerGet(
+ null,
+ this,
readThrough,
/*metrics*/!invoke,
/*event*/!invoke && !dht(),
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheV3.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheV3.java
b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheV3.java
index bd9a3ce..8d71724 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheV3.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheV3.java
@@ -25,6 +25,7 @@ import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.IgniteEx;
import org.apache.ignite.internal.processors.cache.GridCacheAdapter;
import org.apache.ignite.internal.processors.cache.GridCacheSwapManager;
+import org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManager;
import org.apache.ignite.internal.util.lang.GridTuple3;
import org.apache.ignite.internal.util.lang.IgnitePair;
@@ -52,14 +53,14 @@ public class VisorCacheV3 extends VisorCacheV2 {
// Process only started caches.
if (ca != null && ca.context().started()) {
- GridCacheSwapManager swap = ca.context().swap();
+ IgniteCacheOffheapManager offheap = ca.context().offheap();
cacheV3.primaryPartsOffheapSwap = new
ArrayList<>(c.primaryPartitions().size());
for (IgnitePair<Integer> part: c.primaryPartitions()) {
int p = part.get1();
- cacheV3.primaryPartsOffheapSwap.add(new GridTuple3<>(p,
swap.offheapEntriesCount(p), swap.swapEntriesCount(p)));
+ cacheV3.primaryPartsOffheapSwap.add(new GridTuple3<>(p,
offheap.entriesCount(p), 0L));
}
cacheV3.backupPartsOffheapSwap = new
ArrayList<>(c.backupPartitions().size());
@@ -67,7 +68,7 @@ public class VisorCacheV3 extends VisorCacheV2 {
for (IgnitePair<Integer> part: c.backupPartitions()) {
int p = part.get1();
- cacheV3.backupPartsOffheapSwap.add(new GridTuple3<>(p,
swap.offheapEntriesCount(p), swap.swapEntriesCount(p)));
+ cacheV3.backupPartsOffheapSwap.add(new GridTuple3<>(p,
offheap.entriesCount(p), 0L));
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/ce4698f2/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteKernalSelfTestSuite.java
----------------------------------------------------------------------
diff --git
a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteKernalSelfTestSuite.java
b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteKernalSelfTestSuite.java
index 8ba2755..b38e38c 100644
---
a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteKernalSelfTestSuite.java
+++
b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteKernalSelfTestSuite.java
@@ -44,7 +44,6 @@ import
org.apache.ignite.internal.managers.discovery.GridDiscoveryManagerAttribu
import
org.apache.ignite.internal.managers.discovery.GridDiscoveryManagerSelfTest;
import
org.apache.ignite.internal.managers.discovery.IgniteTopologyPrintFormatSelfTest;
import
org.apache.ignite.internal.managers.events.GridEventStorageManagerSelfTest;
-import
org.apache.ignite.internal.managers.swapspace.GridSwapSpaceManagerSelfTest;
import
org.apache.ignite.internal.processors.cluster.GridUpdateNotifierSelfTest;
import org.apache.ignite.internal.processors.port.GridPortProcessorSelfTest;
import org.apache.ignite.internal.processors.service.GridServiceClientNodeTest;