ignite-3336 Added properties IGNITE_THREAD_DUMP_ON_EXCHANGE_TIMEOUT, IGNITE_LONG_OPERATIONS_DUMP_TIMEOUT. Refactored cache message logging. (cherry picked from commit 8ed13e84499a2006baf8df22d897509e2d4e3f7e)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/6be26ad8 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/6be26ad8 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/6be26ad8 Branch: refs/heads/ignite-1232 Commit: 6be26ad8904a7af58944be9a7aacc65dab02b338 Parents: e9a508e Author: sboikov <[email protected]> Authored: Wed Jul 6 11:18:35 2016 +0300 Committer: sboikov <[email protected]> Committed: Wed Jul 6 11:18:35 2016 +0300 ---------------------------------------------------------------------- .../GridNearAtomicAbstractUpdateFuture.java | 7 ++- .../GridNearAtomicSingleUpdateFuture.java | 30 ++++++++++--- .../dht/atomic/GridNearAtomicUpdateFuture.java | 45 ++++++++++++++++---- 3 files changed, 66 insertions(+), 16 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/6be26ad8/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java index 7f52299..3e69c02 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java @@ -52,6 +52,9 @@ public abstract class GridNearAtomicAbstractUpdateFuture extends GridFutureAdapt /** Logger. */ protected static IgniteLogger log; + /** Logger. */ + protected static IgniteLogger msgLog; + /** Cache context. */ protected final GridCacheContext cctx; @@ -166,8 +169,10 @@ public abstract class GridNearAtomicAbstractUpdateFuture extends GridFutureAdapt int remapCnt, boolean waitTopFut ) { - if (log == null) + if (log == null) { + msgLog = cctx.shared().atomicMessageLogger(); log = U.logger(cctx.kernalContext(), logRef, GridFutureAdapter.class); + } this.cctx = cctx; this.cache = cache; http://git-wip-us.apache.org/repos/asf/ignite/blob/6be26ad8/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java index abfc5c9..aad4186 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java @@ -127,9 +127,10 @@ public class GridNearAtomicSingleUpdateFuture extends GridNearAtomicAbstractUpda @Override public boolean onNodeLeft(UUID nodeId) { GridNearAtomicUpdateResponse res = null; + GridNearAtomicUpdateRequest req; + synchronized (mux) { - GridNearAtomicUpdateRequest req = this.req != null && this.req.nodeId().equals(nodeId) ? - this.req : null; + req = this.req != null && this.req.nodeId().equals(nodeId) ? this.req : null; if (req != null && req.response() == null) { res = new GridNearAtomicUpdateResponse(cctx.cacheId(), @@ -146,8 +147,15 @@ public class GridNearAtomicSingleUpdateFuture extends GridNearAtomicAbstractUpda } } - if (res != null) + if (res != null) { + if (msgLog.isDebugEnabled()) { + msgLog.debug("Near update single fut, node left [futId=" + req.futureVersion() + + ", writeVer=" + req.updateVersion() + + ", node=" + nodeId + ']'); + } + onResult(nodeId, res, true); + } return false; } @@ -450,15 +458,25 @@ public class GridNearAtomicSingleUpdateFuture extends GridNearAtomicAbstractUpda } else { try { - if (log.isDebugEnabled()) - log.debug("Sending near atomic update request [nodeId=" + req.nodeId() + ", req=" + req + ']'); - cctx.io().send(req.nodeId(), req, cctx.ioPolicy()); + if (msgLog.isDebugEnabled()) { + msgLog.debug("Near update single fut, sent request [futId=" + req.futureVersion() + + ", writeVer=" + req.updateVersion() + + ", node=" + req.nodeId() + ']'); + } + if (syncMode == FULL_ASYNC) onDone(new GridCacheReturn(cctx, true, true, null, true)); } catch (IgniteCheckedException e) { + if (msgLog.isDebugEnabled()) { + msgLog.debug("Near update single fut, failed to send request [futId=" + req.futureVersion() + + ", writeVer=" + req.updateVersion() + + ", node=" + req.nodeId() + + ", err=" + e + ']'); + } + onSendError(req, e); } } http://git-wip-us.apache.org/repos/asf/ignite/blob/6be26ad8/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java index cc0427c..b2f2704 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java @@ -162,9 +162,9 @@ public class GridNearAtomicUpdateFuture extends GridNearAtomicAbstractUpdateFutu @Override public boolean onNodeLeft(UUID nodeId) { GridNearAtomicUpdateResponse res = null; - synchronized (mux) { - GridNearAtomicUpdateRequest req; + GridNearAtomicUpdateRequest req; + synchronized (mux) { if (singleReq != null) req = singleReq.nodeId().equals(nodeId) ? singleReq : null; else @@ -185,8 +185,15 @@ public class GridNearAtomicUpdateFuture extends GridNearAtomicAbstractUpdateFutu } } - if (res != null) + if (res != null) { + if (msgLog.isDebugEnabled()) { + msgLog.debug("Near update fut, node left [futId=" + req.futureVersion() + + ", writeVer=" + req.updateVersion() + + ", node=" + nodeId + ']'); + } + onResult(nodeId, res, true); + } return false; } @@ -561,15 +568,25 @@ public class GridNearAtomicUpdateFuture extends GridNearAtomicAbstractUpdateFutu } else { try { - if (log.isDebugEnabled()) - log.debug("Sending near atomic update request [nodeId=" + req.nodeId() + ", req=" + req + ']'); - cctx.io().send(req.nodeId(), req, cctx.ioPolicy()); + if (msgLog.isDebugEnabled()) { + msgLog.debug("Near update fut, sent request [futId=" + req.futureVersion() + + ", writeVer=" + req.updateVersion() + + ", node=" + req.nodeId() + ']'); + } + if (syncMode == FULL_ASYNC) onDone(new GridCacheReturn(cctx, true, true, null, true)); } catch (IgniteCheckedException e) { + if (msgLog.isDebugEnabled()) { + msgLog.debug("Near update fut, failed to send request [futId=" + req.futureVersion() + + ", writeVer=" + req.updateVersion() + + ", node=" + req.nodeId() + + ", err=" + e + ']'); + } + onSendError(req, e); } } @@ -595,12 +612,22 @@ public class GridNearAtomicUpdateFuture extends GridNearAtomicAbstractUpdateFutu } else { try { - if (log.isDebugEnabled()) - log.debug("Sending near atomic update request [nodeId=" + req.nodeId() + ", req=" + req + ']'); - cctx.io().send(req.nodeId(), req, cctx.ioPolicy()); + + if (msgLog.isDebugEnabled()) { + msgLog.debug("Near update fut, sent request [futId=" + req.futureVersion() + + ", writeVer=" + req.updateVersion() + + ", node=" + req.nodeId() + ']'); + } } catch (IgniteCheckedException e) { + if (msgLog.isDebugEnabled()) { + msgLog.debug("Near update fut, failed to send request [futId=" + req.futureVersion() + + ", writeVer=" + req.updateVersion() + + ", node=" + req.nodeId() + + ", err=" + e + ']'); + } + onSendError(req, e); } }
