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 <[email protected]> Authored: Tue Oct 6 16:57:17 2015 +0300 Committer: Denis Magda <[email protected]> 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 +}
