Repository: ignite Updated Branches: refs/heads/master 5f9a1e68c -> 33e6135c8
IGNITE-10483: MVCC: Enlist requests failure handling. This closes #5554. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/33e6135c Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/33e6135c Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/33e6135c Branch: refs/heads/master Commit: 33e6135c846053031565e31de98bd891093caf1a Parents: 5f9a1e6 Author: Andrey V. Mashenkov <[email protected]> Authored: Tue Dec 11 14:06:22 2018 +0300 Committer: Igor Seliverstov <[email protected]> Committed: Tue Dec 11 14:06:22 2018 +0300 ---------------------------------------------------------------------- .../processors/cache/GridCacheIoManager.java | 68 ++++++++++++++++++++ .../dht/GridDhtTxQueryEnlistResponse.java | 2 +- 2 files changed, 69 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/33e6135c/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 5b27f4d..2f29ffb 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 @@ -50,6 +50,8 @@ import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxFini import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxFinishResponse; import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareRequest; import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareResponse; +import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxQueryEnlistRequest; +import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxQueryEnlistResponse; import org.apache.ignite.internal.processors.cache.distributed.dht.GridPartitionedSingleGetFuture; import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicAbstractUpdateRequest; import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicNearResponse; @@ -72,10 +74,16 @@ import org.apache.ignite.internal.processors.cache.distributed.near.GridNearLock import org.apache.ignite.internal.processors.cache.distributed.near.GridNearLockResponse; import org.apache.ignite.internal.processors.cache.distributed.near.GridNearSingleGetRequest; import org.apache.ignite.internal.processors.cache.distributed.near.GridNearSingleGetResponse; +import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxEnlistRequest; +import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxEnlistResponse; import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxFinishRequest; import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxFinishResponse; import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxPrepareRequest; import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxPrepareResponse; +import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxQueryEnlistRequest; +import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxQueryEnlistResponse; +import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxQueryResultsEnlistRequest; +import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxQueryResultsEnlistResponse; import org.apache.ignite.internal.processors.cache.query.GridCacheQueryRequest; import org.apache.ignite.internal.processors.cache.query.GridCacheQueryResponse; import org.apache.ignite.internal.processors.cache.transactions.IgniteTxState; @@ -1015,6 +1023,66 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter { break; + case 151: { + GridNearTxQueryEnlistRequest req = (GridNearTxQueryEnlistRequest)msg; + + GridNearTxQueryEnlistResponse res = new GridNearTxQueryEnlistResponse( + req.cacheId(), + req.futureId(), + req.miniId(), + req.version(), + req.classError()); + + sendResponseOnFailedMessage(nodeId, res, cctx, plc); + + break; + } + + case 153: { + GridNearTxQueryResultsEnlistRequest req = (GridNearTxQueryResultsEnlistRequest)msg; + + GridNearTxQueryEnlistResponse res = new GridNearTxQueryResultsEnlistResponse( + req.cacheId(), + req.futureId(), + req.miniId(), + req.version(), + req.classError()); + + sendResponseOnFailedMessage(nodeId, res, cctx, plc); + + break; + } + + case 155: /* GridDhtTxQueryEnlistRequest */ + case 156: /* GridDhtTxQueryFirstEnlistRequest */ { + GridDhtTxQueryEnlistRequest req = (GridDhtTxQueryEnlistRequest)msg; + + GridDhtTxQueryEnlistResponse res = new GridDhtTxQueryEnlistResponse( + req.cacheId(), + req.dhtFutureId(), + req.batchId(), + req.classError()); + + sendResponseOnFailedMessage(nodeId, res, cctx, plc); + + break; + } + + case 159: { + GridNearTxEnlistRequest req = (GridNearTxEnlistRequest)msg; + + GridNearTxEnlistResponse res = new GridNearTxEnlistResponse( + req.cacheId(), + req.futureId(), + req.miniId(), + req.version(), + req.classError()); + + sendResponseOnFailedMessage(nodeId, res, cctx, plc); + + break; + } + case -36: { GridDhtAtomicSingleUpdateRequest req = (GridDhtAtomicSingleUpdateRequest)msg; http://git-wip-us.apache.org/repos/asf/ignite/blob/33e6135c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxQueryEnlistResponse.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxQueryEnlistResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxQueryEnlistResponse.java index 18f4baa..4255436 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxQueryEnlistResponse.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxQueryEnlistResponse.java @@ -60,7 +60,7 @@ public class GridDhtTxQueryEnlistResponse extends GridCacheIdMessage { * @param batchId Batch id. * @param err Error. */ - GridDhtTxQueryEnlistResponse(int cacheId, IgniteUuid futId, int batchId, + public GridDhtTxQueryEnlistResponse(int cacheId, IgniteUuid futId, int batchId, Throwable err) { this.cacheId = cacheId; this.futId = futId;
