You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2017/07/07 09:37:45 UTC

[44/50] [abbrv] ignite git commit: 2.1 Added remote node pending messages in diagnostic info

2.1 Added remote node pending messages in diagnostic info


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9c6a65e2
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9c6a65e2
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9c6a65e2

Branch: refs/heads/master
Commit: 9c6a65e2723ea8bdb33dde89190a1b12799faf3a
Parents: 7f16e6f
Author: sboikov <sb...@gridgain.com>
Authored: Thu Jul 6 15:10:24 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Jul 6 15:10:24 2017 +0300

----------------------------------------------------------------------
 .../internal/IgniteDiagnosticMessage.java       |  8 +++++++
 .../IgniteDiagnosticPrepareContext.java         |  3 +++
 .../processors/cache/GridCacheIoManager.java    | 25 +++++++++++++-------
 .../GridCachePartitionExchangeManager.java      |  7 +++++-
 4 files changed, 33 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/9c6a65e2/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticMessage.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticMessage.java
index 6e6bac0..bd4ec3a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticMessage.java
@@ -460,6 +460,14 @@ public class IgniteDiagnosticMessage implements Message {
     }
 
     /**
+     * @param sb String builder.
+     * @param ctx Context.
+     */
+    static void dumpPendingCacheMessages(StringBuilder sb, GridKernalContext ctx) {
+        ctx.cache().context().io().dumpPendingMessages(sb);
+    }
+
+    /**
      * @param ctx Context.
      * @param nodeId Target node ID.
      * @return Communication information future.

http://git-wip-us.apache.org/repos/asf/ignite/blob/9c6a65e2/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticPrepareContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticPrepareContext.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticPrepareContext.java
index b55199a..416ef29 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticPrepareContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteDiagnosticPrepareContext.java
@@ -41,6 +41,7 @@ import static org.apache.ignite.internal.IgniteDiagnosticMessage.TxInfoClosure;
 import static org.apache.ignite.internal.IgniteDiagnosticMessage.dumpCommunicationInfo;
 import static org.apache.ignite.internal.IgniteDiagnosticMessage.dumpExchangeInfo;
 import static org.apache.ignite.internal.IgniteDiagnosticMessage.dumpNodeBasicInfo;
+import static org.apache.ignite.internal.IgniteDiagnosticMessage.dumpPendingCacheMessages;
 
 /**
  * Groups diagnostic closures by node/closure type.
@@ -193,6 +194,8 @@ public class IgniteDiagnosticPrepareContext {
 
                 sb.append(U.nl());
 
+                dumpPendingCacheMessages(sb, ctx);
+
                 sb.append(commInfo.get(10_000));
 
                 moreInfo(sb, ctx);

http://git-wip-us.apache.org/repos/asf/ignite/blob/9c6a65e2/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 1d2be13..9f1873e 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
@@ -91,6 +91,7 @@ import org.jetbrains.annotations.Nullable;
 import org.jsr166.ConcurrentHashMap8;
 
 import static org.apache.ignite.internal.GridTopic.TOPIC_CACHE;
+import static org.apache.ignite.internal.util.IgniteUtils.nl;
 
 /**
  * Cache communication manager.
@@ -131,19 +132,25 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
     private final List<GridCacheMessage> pendingMsgs = new ArrayList<>(MAX_STORED_PENDING_MESSAGES);
 
     /**
-     *
+     * @param sb String builder.
      */
-    public void dumpPendingMessages() {
+    public void dumpPendingMessages(StringBuilder sb) {
         synchronized (pendingMsgs) {
             if (pendingMsgs.isEmpty())
                 return;
 
-            diagnosticLog.info("Pending cache messages waiting for exchange [" +
-                "readyVer=" + cctx.exchange().readyAffinityVersion() +
-                ", discoVer=" + cctx.discovery().topologyVersion() + ']');
+            sb.append("Pending cache messages waiting for exchange [readyVer=").
+                append(cctx.exchange().readyAffinityVersion()).
+                append(", discoVer=").
+                append(cctx.discovery().topologyVersion()).append(']');
+
+            sb.append(nl());
 
-            for (GridCacheMessage msg : pendingMsgs)
-                diagnosticLog.info("Message [waitVer=" + msg.topologyVersion() + ", msg=" + msg + ']');
+            for (GridCacheMessage msg : pendingMsgs) {
+                sb.append("Message [waitVer=").append(msg.topologyVersion()).append(", msg=").append(msg).append(']');
+
+                sb.append(nl());
+            }
         }
     }
 
@@ -341,12 +348,12 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
                     append(", desc=").append(descriptorForMessage(cacheMsg)).
                     append(']');
 
-                msg0.append(U.nl()).append("Registered listeners:");
+                msg0.append(nl()).append("Registered listeners:");
 
                 Map<Integer, IgniteBiInClosure[]> idxClsHandlers0 = msgHandlers.idxClsHandlers;
 
                 for (Map.Entry<Integer, IgniteBiInClosure[]> e : idxClsHandlers0.entrySet())
-                    msg0.append(U.nl()).append(e.getKey()).append("=").append(Arrays.toString(e.getValue()));
+                    msg0.append(nl()).append(e.getKey()).append("=").append(Arrays.toString(e.getValue()));
 
                 if (cctx.kernalContext().isStopping()) {
                     if (log.isDebugEnabled())

http://git-wip-us.apache.org/repos/asf/ignite/blob/9c6a65e2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
index b3cbd17..8506cde 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
@@ -1537,7 +1537,12 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
 
         cctx.affinity().dumpDebugInfo();
 
-        cctx.io().dumpPendingMessages();
+        StringBuilder pendingMsgs = new StringBuilder();
+
+        cctx.io().dumpPendingMessages(pendingMsgs);
+
+        if (pendingMsgs.length() > 0)
+            diagnosticLog.info(pendingMsgs.toString());
 
         if (IgniteSystemProperties.getBoolean(IGNITE_IO_DUMP_ON_TIMEOUT, false))
             cctx.gridIO().dumpStats();