You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by dm...@apache.org on 2015/10/06 15:57:45 UTC
ignite git commit: ignite-1272: added 'deploymentEnabled' flag to
GridCacheContext
Repository: ignite
Updated Branches:
refs/heads/ignite-1272 89cf57967 -> 787347a98
ignite-1272: added 'deploymentEnabled' flag to GridCacheContext
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/787347a9
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/787347a9
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/787347a9
Branch: refs/heads/ignite-1272
Commit: 787347a98009a72ec83f751a4832ba2ac8384d2c
Parents: 89cf579
Author: Denis Magda <dm...@gridgain.com>
Authored: Tue Oct 6 16:57:17 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Tue Oct 6 16:57:17 2015 +0300
----------------------------------------------------------------------
.../internal/GridEventConsumeHandler.java | 15 +++++-----
.../processors/cache/CacheObjectContext.java | 17 ++++++++++--
.../processors/cache/GridCacheContext.java | 8 ++++--
.../cache/GridCacheEvictionRequest.java | 8 +++---
.../processors/cache/GridCacheIoManager.java | 4 ++-
.../processors/cache/GridCacheMessage.java | 29 +++++++++++---------
.../processors/cache/GridCacheUtils.java | 20 ++++++++++++--
.../dht/GridDhtTxPrepareRequest.java | 11 ++++++--
.../dht/atomic/GridDhtAtomicUpdateRequest.java | 8 +++---
.../dht/atomic/GridNearAtomicUpdateRequest.java | 8 +++---
.../portable/CacheObjectPortableContext.java | 6 ++--
.../CacheObjectPortableProcessorImpl.java | 5 ++--
.../cache/query/GridCacheQueryRequest.java | 26 ++++++++++--------
.../cache/query/GridCacheQueryResponse.java | 15 ++++++----
.../continuous/CacheContinuousQueryHandler.java | 9 ++----
.../cache/transactions/IgniteTxEntry.java | 10 ++++---
.../IgniteCacheObjectProcessorImpl.java | 7 +++--
17 files changed, 128 insertions(+), 78 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
index 599d301..9896b9c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
@@ -35,6 +35,7 @@ import org.apache.ignite.internal.managers.deployment.GridDeploymentInfo;
import org.apache.ignite.internal.managers.deployment.GridDeploymentInfoBean;
import org.apache.ignite.internal.managers.eventstorage.GridLocalEventListener;
import org.apache.ignite.internal.processors.cache.GridCacheAdapter;
+import org.apache.ignite.internal.processors.cache.GridCacheContext;
import org.apache.ignite.internal.processors.cache.GridCacheDeployable;
import org.apache.ignite.internal.processors.cache.GridCacheDeploymentManager;
import org.apache.ignite.internal.processors.continuous.GridContinuousHandler;
@@ -197,16 +198,16 @@ class GridEventConsumeHandler implements GridContinuousHandler {
if (node == null)
continue;
- if (ctx.config().isPeerClassLoadingEnabled()
- && ctx.discovery().cacheNode(node, cacheName)) {
+ GridCacheContext cctx = ctx.cache().internalCache(
+ cacheName).context();
+
+ if (cctx.deploymentEnabled() &&
+ ctx.discovery().cacheNode(node, cacheName)) {
wrapper.p2pMarshal(ctx.config().getMarshaller());
wrapper.cacheName = cacheName;
- GridCacheDeploymentManager depMgr = ctx.cache()
- .internalCache(cacheName).context().deploy();
-
- depMgr.prepare(wrapper);
+ cctx.deploy().prepare(wrapper);
}
}
@@ -519,4 +520,4 @@ class GridEventConsumeHandler implements GridContinuousHandler {
evt = (Event)in.readObject();
}
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectContext.java
index 7d7cbec..966cd61 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheObjectContext.java
@@ -44,21 +44,27 @@ public class CacheObjectContext {
/** */
private boolean p2pEnabled;
+ /** */
+ private boolean depEnabled;
+
/**
* @param kernalCtx Kernal context.
* @param dfltAffMapper Default affinity mapper.
* @param cpyOnGet Copy on get flag.
* @param storeVal {@code True} if should store unmarshalled value in cache.
+ * @param depEnabled {@code true} if deployment is enabled for the given cache.
*/
public CacheObjectContext(GridKernalContext kernalCtx,
AffinityKeyMapper dfltAffMapper,
boolean cpyOnGet,
- boolean storeVal) {
+ boolean storeVal,
+ boolean depEnabled) {
this.kernalCtx = kernalCtx;
this.p2pEnabled = kernalCtx.config().isPeerClassLoadingEnabled();
this.dfltAffMapper = dfltAffMapper;
this.cpyOnGet = cpyOnGet;
this.storeVal = storeVal;
+ this.depEnabled = depEnabled;
proc = kernalCtx.cacheObjects();
}
@@ -71,6 +77,13 @@ public class CacheObjectContext {
}
/**
+ * @return {@code True} if deployment is enabled for the given cache.
+ */
+ public boolean deploymentEnabled() {
+ return depEnabled;
+ }
+
+ /**
* @return Copy on get flag.
*/
public boolean copyOnGet() {
@@ -126,4 +139,4 @@ public class CacheObjectContext {
public Collection<Object> unwrapPortablesIfNeeded(Collection<Object> col, boolean keepPortable) {
return col;
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
index 5385dec..7995045 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
@@ -236,6 +236,9 @@ public class GridCacheContext<K, V> implements Externalizable {
/** Updates allowed flag. */
private boolean updatesAllowed;
+ /** Deployment enabled flag for this specific cache */
+ private boolean depEnabled;
+
/**
* Empty constructor required for {@link Externalizable}.
*/
@@ -312,6 +315,7 @@ public class GridCacheContext<K, V> implements Externalizable {
this.cacheType = cacheType;
this.affNode = affNode;
this.updatesAllowed = updatesAllowed;
+ this.depEnabled = ctx.deploy().enabled() && !cacheObjects().isPortableEnabled(cacheCfg);
/*
* Managers in starting order!
@@ -965,7 +969,7 @@ public class GridCacheContext<K, V> implements Externalizable {
* @return Cache transaction manager.
*/
public IgniteTxManager tm() {
- return sharedCtx.tm();
+ return sharedCtx.tm();
}
/**
@@ -1411,7 +1415,7 @@ public class GridCacheContext<K, V> implements Externalizable {
* @return {@code True} if deployment enabled.
*/
public boolean deploymentEnabled() {
- return ctx.deploy().enabled();
+ return depEnabled;
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionRequest.java
index fa0359c..4e0807a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionRequest.java
@@ -82,15 +82,15 @@ public class GridCacheEvictionRequest extends GridCacheMessage implements GridCa
super.prepareMarshal(ctx);
if (entries != null) {
- boolean depEnabled = ctx.deploymentEnabled();
-
GridCacheContext cctx = ctx.cacheContext(cacheId);
+ boolean depEnabled = cctx.deploymentEnabled();
+
for (CacheEvictionEntry e : entries) {
e.prepareMarshal(cctx);
if (depEnabled)
- prepareObject(e.key().value(cctx.cacheObjectContext(), false), ctx);
+ prepareObject(e.key().value(cctx.cacheObjectContext(), false), cctx);
}
}
}
@@ -239,4 +239,4 @@ public class GridCacheEvictionRequest extends GridCacheMessage implements GridCa
@Override public String toString() {
return S.toString(GridCacheEvictionRequest.class, this);
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
index 421ec82..3a5c0c1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
@@ -617,7 +617,9 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
if (destNodeId == null || !cctx.localNodeId().equals(destNodeId)) {
msg.prepareMarshal(cctx);
- if (depEnabled && msg instanceof GridCacheDeployable)
+ GridCacheContext ctx = cctx.cacheContext(msg.cacheId());
+
+ if (depEnabled && ctx.deploymentEnabled() && msg instanceof GridCacheDeployable)
cctx.deploy().prepare((GridCacheDeployable)msg);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java
index 55688e4..7cffd09 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java
@@ -185,7 +185,9 @@ public abstract class GridCacheMessage implements Message {
* @param ctx Context.
* @throws IgniteCheckedException If failed.
*/
- protected final void prepareObject(@Nullable Object o, GridCacheSharedContext ctx) throws IgniteCheckedException {
+ protected final void prepareObject(@Nullable Object o, GridCacheContext ctx) throws IgniteCheckedException {
+ assert ctx.deploymentEnabled();
+
if (!skipPrepare && o != null) {
GridDeploymentInfo d = ctx.deploy().globalDeploymentInfo();
@@ -268,14 +270,14 @@ public abstract class GridCacheMessage implements Message {
if (ctx.deploymentEnabled()) {
if (info.key() != null)
- prepareObject(info.key().value(ctx.cacheObjectContext(), false), ctx.shared());
+ prepareObject(info.key().value(ctx.cacheObjectContext(), false), ctx);
CacheObject val = info.value();
if (val != null) {
val.finishUnmarshal(ctx.cacheObjectContext(), ctx.deploy().globalLoader());
- prepareObject(CU.value(val, ctx, false), ctx.shared());
+ prepareObject(CU.value(val, ctx, false), ctx);
}
}
}
@@ -343,14 +345,15 @@ public abstract class GridCacheMessage implements Message {
for (IgniteTxEntry e : txEntries) {
e.marshal(ctx, transferExpiry);
- if (ctx.deploymentEnabled()) {
- CacheObjectContext cctx =ctx.cacheContext(e.cacheId()).cacheObjectContext();
+ GridCacheContext cctx = ctx.cacheContext(e.cacheId());
+
+ if (cctx.deploymentEnabled()) {
if (e.key() != null)
- prepareObject(e.key().value(cctx, false), ctx);
+ prepareObject(e.key().value(cctx.cacheObjectContext(), false), cctx);
if (e.value() != null)
- prepareObject(e.value().value(cctx, false), ctx);
+ prepareObject(e.value().value(cctx.cacheObjectContext(), false), cctx);
}
}
}
@@ -388,8 +391,8 @@ public abstract class GridCacheMessage implements Message {
* @return Marshalled collection.
* @throws IgniteCheckedException If failed.
*/
- @Nullable protected final byte[][] marshalInvokeArguments(@Nullable Object[] args,
- GridCacheSharedContext ctx) throws IgniteCheckedException {
+ @Nullable protected final byte[][] marshalInvokeArguments(@Nullable Object[] args, GridCacheContext ctx)
+ throws IgniteCheckedException {
assert ctx != null;
if (args == null || args.length == 0)
@@ -443,7 +446,7 @@ public abstract class GridCacheMessage implements Message {
* @throws IgniteCheckedException If failed.
*/
@Nullable protected List<byte[]> marshalCollection(@Nullable Collection<?> col,
- GridCacheSharedContext ctx) throws IgniteCheckedException {
+ GridCacheContext ctx) throws IgniteCheckedException {
assert ctx != null;
if (col == null)
@@ -483,7 +486,7 @@ public abstract class GridCacheMessage implements Message {
obj.prepareMarshal(ctx.cacheObjectContext());
if (depEnabled)
- prepareObject(obj.value(ctx.cacheObjectContext(), false), ctx.shared());
+ prepareObject(obj.value(ctx.cacheObjectContext(), false), ctx);
}
}
}
@@ -505,7 +508,7 @@ public abstract class GridCacheMessage implements Message {
obj.prepareMarshal(ctx.cacheObjectContext());
if (depEnabled)
- prepareObject(obj.value(ctx.cacheObjectContext(), false), ctx.shared());
+ prepareObject(obj.value(ctx.cacheObjectContext(), false), ctx);
}
}
}
@@ -656,4 +659,4 @@ public abstract class GridCacheMessage implements Message {
@Override public String toString() {
return S.toString(GridCacheMessage.class, this);
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
index 2d5698a..ce46990 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
@@ -933,11 +933,25 @@ public class GridCacheUtils {
* @throws IgniteCheckedException If marshalling failed.
*/
@SuppressWarnings("unchecked")
- public static byte[] marshal(GridCacheSharedContext ctx, Object obj)
+ public static byte[] marshal(GridCacheContext ctx, Object obj)
throws IgniteCheckedException {
assert ctx != null;
- if (ctx.gridDeploy().enabled()) {
+ return marshal(ctx.shared(), ctx.deploymentEnabled(), obj);
+ }
+
+ /**
+ * @param ctx Cache context.
+ * @param depEnabled deployment enabled flag.
+ * @param obj Object to marshal.
+ * @return Buffer that contains obtained byte array.
+ * @throws IgniteCheckedException If marshalling failed.
+ */
+ public static byte[] marshal(GridCacheSharedContext ctx, boolean depEnabled, Object obj)
+ throws IgniteCheckedException {
+ assert ctx != null;
+
+ if (ctx.deploymentEnabled()) {
if (obj != null) {
if (obj instanceof Iterable)
ctx.deploy().registerClasses((Iterable<?>)obj);
@@ -1805,4 +1819,4 @@ public class GridCacheUtils {
}
};
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java
index 5f9443b..f0da09c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java
@@ -29,6 +29,7 @@ import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.GridDirectCollection;
import org.apache.ignite.internal.GridDirectTransient;
import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
+import org.apache.ignite.internal.processors.cache.GridCacheContext;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxPrepareRequest;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
@@ -288,8 +289,12 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
key.prepareMarshal(ctx.cacheContext(key.cacheId()));
if (ctx.deploymentEnabled()) {
- for (IgniteTxKey k : owned.keySet())
- prepareObject(k, ctx);
+ for (IgniteTxKey k : owned.keySet()) {
+ GridCacheContext cctx = ctx.cacheContext(k.cacheId());
+
+ if (cctx.deploymentEnabled())
+ prepareObject(k, cctx);
+ }
}
}
@@ -554,4 +559,4 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
@Override public byte fieldsCount() {
return 35;
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateRequest.java
index f5231ef..79e1993 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateRequest.java
@@ -546,13 +546,13 @@ public class GridDhtAtomicUpdateRequest extends GridCacheMessage implements Grid
prepareMarshalCacheObjects(nearVals, cctx);
if (forceTransformBackups) {
- invokeArgsBytes = marshalInvokeArguments(invokeArgs, ctx);
+ invokeArgsBytes = marshalInvokeArguments(invokeArgs, cctx);
- entryProcessorsBytes = marshalCollection(entryProcessors, ctx);
+ entryProcessorsBytes = marshalCollection(entryProcessors, cctx);
}
if (forceTransformBackups)
- nearEntryProcessorsBytes = marshalCollection(nearEntryProcessors, ctx);
+ nearEntryProcessorsBytes = marshalCollection(nearEntryProcessors, cctx);
}
/** {@inheritDoc} */
@@ -913,4 +913,4 @@ public class GridDhtAtomicUpdateRequest extends GridCacheMessage implements Grid
@Override public String toString() {
return S.toString(GridDhtAtomicUpdateRequest.class, this);
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateRequest.java
index ccb67d2..594025c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateRequest.java
@@ -539,7 +539,7 @@ public class GridNearAtomicUpdateRequest extends GridCacheMessage implements Gri
prepareMarshalCacheObjects(keys, cctx);
if (op == TRANSFORM)
- entryProcessorsBytes = marshalCollection(entryProcessors, ctx);
+ entryProcessorsBytes = marshalCollection(entryProcessors, cctx);
else
prepareMarshalCacheObjects(vals, cctx);
@@ -558,10 +558,10 @@ public class GridNearAtomicUpdateRequest extends GridCacheMessage implements Gri
filter = null;
}
- invokeArgsBytes = marshalInvokeArguments(invokeArgs, ctx);
+ invokeArgsBytes = marshalInvokeArguments(invokeArgs, cctx);
if (expiryPlc != null)
- expiryPlcBytes = CU.marshal(ctx, new IgniteExternalizableExpiryPolicy(expiryPlc));
+ expiryPlcBytes = CU.marshal(cctx, new IgniteExternalizableExpiryPolicy(expiryPlc));
}
/** {@inheritDoc} */
@@ -957,4 +957,4 @@ public class GridNearAtomicUpdateRequest extends GridCacheMessage implements Gri
return S.toString(GridNearAtomicUpdateRequest.class, this, "filter", Arrays.toString(filter),
"parent", super.toString());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableContext.java
index d064601..d5916e3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableContext.java
@@ -41,13 +41,15 @@ public class CacheObjectPortableContext extends CacheObjectContext {
* @param portableEnabled Portable enabled flag.
* @param cpyOnGet Copy on get flag.
* @param storeVal {@code True} if should store unmarshalled value in cache.
+ * @param depEnabled {@code true} if deployment is enabled for the given cache.
*/
public CacheObjectPortableContext(GridKernalContext kernalCtx,
boolean cpyOnGet,
boolean storeVal,
- boolean portableEnabled) {
+ boolean portableEnabled,
+ boolean depEnabled) {
super(kernalCtx, portableEnabled ? new CacheDefaultPortableAffinityKeyMapper() :
- new GridCacheDefaultAffinityKeyMapper(), cpyOnGet, storeVal);
+ new GridCacheDefaultAffinityKeyMapper(), cpyOnGet, storeVal, depEnabled);
this.portableEnabled = portableEnabled;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableProcessorImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableProcessorImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableProcessorImpl.java
index 4cab3db..29b2d46 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableProcessorImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectPortableProcessorImpl.java
@@ -704,7 +704,8 @@ public class CacheObjectPortableProcessorImpl extends IgniteCacheObjectProcessor
CacheObjectContext res = new CacheObjectPortableContext(ctx,
ctx0.copyOnGet(),
ctx0.storeValue(),
- portableEnabled);
+ portableEnabled,
+ ctx0.deploymentEnabled());
ctx.resource().injectGeneric(res.defaultAffMapper());
@@ -1022,4 +1023,4 @@ public class CacheObjectPortableProcessorImpl extends IgniteCacheObjectProcessor
return S.toString(MetaDataPredicate.class, this);
}
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryRequest.java
index c9ce933..e55f55c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryRequest.java
@@ -269,34 +269,36 @@ public class GridCacheQueryRequest extends GridCacheMessage implements GridCache
@Override public void prepareMarshal(GridCacheSharedContext ctx) throws IgniteCheckedException {
super.prepareMarshal(ctx);
+ GridCacheContext cctx = ctx.cacheContext(cacheId);
+
if (keyValFilter != null) {
- if (ctx.deploymentEnabled())
- prepareObject(keyValFilter, ctx);
+ if (cctx.deploymentEnabled())
+ prepareObject(keyValFilter, cctx);
- keyValFilterBytes = CU.marshal(ctx, keyValFilter);
+ keyValFilterBytes = CU.marshal(cctx, keyValFilter);
}
if (rdc != null) {
- if (ctx.deploymentEnabled())
- prepareObject(rdc, ctx);
+ if (cctx.deploymentEnabled())
+ prepareObject(rdc, cctx);
- rdcBytes = CU.marshal(ctx, rdc);
+ rdcBytes = CU.marshal(cctx, rdc);
}
if (trans != null) {
- if (ctx.deploymentEnabled())
- prepareObject(trans, ctx);
+ if (cctx.deploymentEnabled())
+ prepareObject(trans, cctx);
- transBytes = CU.marshal(ctx, trans);
+ transBytes = CU.marshal(cctx, trans);
}
if (!F.isEmpty(args)) {
- if (ctx.deploymentEnabled()) {
+ if (cctx.deploymentEnabled()) {
for (Object arg : args)
- prepareObject(arg, ctx);
+ prepareObject(arg, cctx);
}
- argsBytes = CU.marshal(ctx, args);
+ argsBytes = CU.marshal(cctx, args);
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryResponse.java
index 78e2ac7..b994d78 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryResponse.java
@@ -25,6 +25,7 @@ import java.util.Map;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.internal.GridDirectCollection;
import org.apache.ignite.internal.GridDirectTransient;
+import org.apache.ignite.internal.processors.cache.GridCacheContext;
import org.apache.ignite.internal.processors.cache.GridCacheDeployable;
import org.apache.ignite.internal.processors.cache.GridCacheMessage;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
@@ -114,19 +115,21 @@ public class GridCacheQueryResponse extends GridCacheMessage implements GridCach
@Override public void prepareMarshal(GridCacheSharedContext ctx) throws IgniteCheckedException {
super.prepareMarshal(ctx);
+ GridCacheContext cctx = ctx.cacheContext(cacheId);
+
if (err != null)
errBytes = ctx.marshaller().marshal(err);
- metaDataBytes = marshalCollection(metadata, ctx);
- dataBytes = marshalCollection(data, ctx);
+ metaDataBytes = marshalCollection(metadata, cctx);
+ dataBytes = marshalCollection(data, cctx);
- if (ctx.deploymentEnabled() && !F.isEmpty(data)) {
+ if (cctx.deploymentEnabled() && !F.isEmpty(data)) {
for (Object o : data) {
if (o instanceof Map.Entry) {
Map.Entry e = (Map.Entry)o;
- prepareObject(e.getKey(), ctx);
- prepareObject(e.getValue(), ctx);
+ prepareObject(e.getKey(), cctx);
+ prepareObject(e.getValue(), cctx);
}
}
}
@@ -339,4 +342,4 @@ public class GridCacheQueryResponse extends GridCacheMessage implements GridCach
@Override public String toString() {
return S.toString(GridCacheQueryResponse.class, this);
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
index c99e07f..61f13a9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
@@ -236,13 +236,10 @@ class CacheContinuousQueryHandler<K, V> implements GridContinuousHandler {
try {
ClusterNode node = ctx.discovery().node(nodeId);
- if (ctx.config().isPeerClassLoadingEnabled() && node != null) {
+ if (cctx.deploymentEnabled() && node != null) {
evt.entry().prepareMarshal(cctx);
- GridCacheDeploymentManager depMgr =
- ctx.cache().internalCache(cacheName).context().deploy();
-
- depMgr.prepare(evt.entry());
+ cctx.deploy().prepare(evt.entry());
}
else
evt.entry().prepareMarshal(cctx);
@@ -555,4 +552,4 @@ class CacheContinuousQueryHandler<K, V> implements GridContinuousHandler {
depInfo = (GridDeploymentInfo)in.readObject();
}
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
index 3c33d19..c832ac8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
@@ -732,16 +732,18 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
* @throws IgniteCheckedException If failed.
*/
public void marshal(GridCacheSharedContext<?, ?> ctx, boolean transferExpiry) throws IgniteCheckedException {
+ GridCacheContext cctx = ctx.cacheContext(cacheId);
+
if (filters != null) {
for (CacheEntryPredicate p : filters) {
if (p != null)
- p.prepareMarshal(ctx.cacheContext(cacheId));
+ p.prepareMarshal(cctx);
}
}
// Do not serialize filters if they are null.
if (transformClosBytes == null && entryProcessorsCol != null)
- transformClosBytes = CU.marshal(ctx, entryProcessorsCol);
+ transformClosBytes = CU.marshal(cctx, entryProcessorsCol);
if (transferExpiry)
transferExpiryPlc = expiryPlc != null && expiryPlc != this.ctx.expiry();
@@ -750,7 +752,7 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
val.marshal(ctx, context());
- expiryPlcBytes = transferExpiryPlc ? CU.marshal(ctx, new IgniteExternalizableExpiryPolicy(expiryPlc)) : null;
+ expiryPlcBytes = transferExpiryPlc ? CU.marshal(cctx, new IgniteExternalizableExpiryPolicy(expiryPlc)) : null;
}
/**
@@ -1038,4 +1040,4 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
return GridToStringBuilder.toString(IgniteTxEntry.class, this, "xidVer", tx == null ? "null" : tx.xidVersion());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/787347a9/modules/core/src/main/java/org/apache/ignite/internal/processors/cacheobject/IgniteCacheObjectProcessorImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cacheobject/IgniteCacheObjectProcessorImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cacheobject/IgniteCacheObjectProcessorImpl.java
index 6e7fadd..cca8b00 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cacheobject/IgniteCacheObjectProcessorImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cacheobject/IgniteCacheObjectProcessorImpl.java
@@ -91,7 +91,7 @@ public class IgniteCacheObjectProcessorImpl extends GridProcessorAdapter impleme
/** {@inheritDoc} */
@Override public byte[] marshal(CacheObjectContext ctx, Object val) throws IgniteCheckedException {
- return CU.marshal(ctx.kernalContext().cache().context(), val);
+ return CU.marshal(ctx.kernalContext().cache().context(), ctx.deploymentEnabled(), val);
}
/** {@inheritDoc} */
@@ -209,7 +209,8 @@ public class IgniteCacheObjectProcessorImpl extends GridProcessorAdapter impleme
CacheObjectContext res = new CacheObjectContext(ctx,
ccfg.getAffinityMapper() != null ? ccfg.getAffinityMapper() : new GridCacheDefaultAffinityKeyMapper(),
ccfg.isCopyOnRead() && memMode != OFFHEAP_VALUES,
- storeVal);
+ storeVal,
+ ctx.config().isPeerClassLoadingEnabled() && !isPortableEnabled(ccfg));
ctx.resource().injectGeneric(res.defaultAffMapper());
@@ -392,4 +393,4 @@ public class IgniteCacheObjectProcessorImpl extends GridProcessorAdapter impleme
return new CacheObjectByteArrayImpl(valCpy);
}
}
-}
\ No newline at end of file
+}