Repository: ignite
Updated Branches:
  refs/heads/ignite-1758 072238430 -> 3c4e192bc


ignite-1758 debug


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

Branch: refs/heads/ignite-1758
Commit: 3c4e192bce8b978b46c6dcfa04d4b01802ce62e4
Parents: 0722384
Author: sboikov <sboi...@gridgain.com>
Authored: Wed Nov 4 16:31:26 2015 +0300
Committer: sboikov <sboi...@gridgain.com>
Committed: Wed Nov 4 16:31:26 2015 +0300

----------------------------------------------------------------------
 .../ignite/spi/discovery/tcp/ServerImpl.java    | 101 +++++++++++--------
 .../spi/discovery/tcp/TcpDiscoveryImpl.java     |   6 +-
 2 files changed, 61 insertions(+), 46 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/3c4e192b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index 0fe2881..6f22d5b 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -278,8 +278,6 @@ class ServerImpl extends TcpDiscoveryImpl {
                 throw new IgniteSpiException("Info log level should be enabled 
for TCP discovery to work " +
                     "in debug mode.");
 
-            debugLog = new ConcurrentLinkedDeque<>();
-
             U.quietAndWarn(log, "TCP discovery SPI is configured in debug 
mode.");
         }
 
@@ -2127,65 +2125,82 @@ class ServerImpl extends TcpDiscoveryImpl {
          * @param msg Message to process.
          */
         @Override protected void processMessage(TcpDiscoveryAbstractMessage 
msg) {
-            if (log.isDebugEnabled())
-                log.debug("Processing message [cls=" + 
msg.getClass().getSimpleName() + ", id=" + msg.id() + ']');
+            try {
+                if (log.isDebugEnabled())
+                    log.debug("Processing message [cls=" + 
msg.getClass().getSimpleName() + ", id=" + msg.id() + ']');
 
-            if (debugMode)
-                debugLog("Processing message [cls=" + 
msg.getClass().getSimpleName() + ", id=" + msg.id() + ']');
+                if (debugMode)
+                    debugLog("Processing message [cls=" + 
msg.getClass().getSimpleName() + ", id=" + msg.id() + ']');
 
-            spi.stats.onMessageProcessingStarted(msg);
+                spi.stats.onMessageProcessingStarted(msg);
 
-            if (msg instanceof TcpDiscoveryJoinRequestMessage)
-                processJoinRequestMessage((TcpDiscoveryJoinRequestMessage)msg);
+                if (msg instanceof TcpDiscoveryJoinRequestMessage)
+                    
processJoinRequestMessage((TcpDiscoveryJoinRequestMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryClientReconnectMessage)
-                
processClientReconnectMessage((TcpDiscoveryClientReconnectMessage)msg);
+                else if (msg instanceof TcpDiscoveryClientReconnectMessage)
+                    
processClientReconnectMessage((TcpDiscoveryClientReconnectMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryNodeAddedMessage)
-                processNodeAddedMessage((TcpDiscoveryNodeAddedMessage)msg);
+                else if (msg instanceof TcpDiscoveryNodeAddedMessage)
+                    processNodeAddedMessage((TcpDiscoveryNodeAddedMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryNodeAddFinishedMessage)
-                
processNodeAddFinishedMessage((TcpDiscoveryNodeAddFinishedMessage)msg);
+                else if (msg instanceof TcpDiscoveryNodeAddFinishedMessage)
+                    
processNodeAddFinishedMessage((TcpDiscoveryNodeAddFinishedMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryNodeLeftMessage)
-                processNodeLeftMessage((TcpDiscoveryNodeLeftMessage)msg);
+                else if (msg instanceof TcpDiscoveryNodeLeftMessage)
+                    processNodeLeftMessage((TcpDiscoveryNodeLeftMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryNodeFailedMessage)
-                processNodeFailedMessage((TcpDiscoveryNodeFailedMessage)msg);
+                else if (msg instanceof TcpDiscoveryNodeFailedMessage)
+                    
processNodeFailedMessage((TcpDiscoveryNodeFailedMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryClientHeartbeatMessage)
-                
processClientHeartbeatMessage((TcpDiscoveryClientHeartbeatMessage)msg);
+                else if (msg instanceof TcpDiscoveryClientHeartbeatMessage)
+                    
processClientHeartbeatMessage((TcpDiscoveryClientHeartbeatMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryHeartbeatMessage)
-                processHeartbeatMessage((TcpDiscoveryHeartbeatMessage)msg);
+                else if (msg instanceof TcpDiscoveryHeartbeatMessage)
+                    processHeartbeatMessage((TcpDiscoveryHeartbeatMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryStatusCheckMessage)
-                processStatusCheckMessage((TcpDiscoveryStatusCheckMessage)msg);
+                else if (msg instanceof TcpDiscoveryStatusCheckMessage)
+                    
processStatusCheckMessage((TcpDiscoveryStatusCheckMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryDiscardMessage)
-                processDiscardMessage((TcpDiscoveryDiscardMessage)msg);
+                else if (msg instanceof TcpDiscoveryDiscardMessage)
+                    processDiscardMessage((TcpDiscoveryDiscardMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryCustomEventMessage)
-                processCustomMessage((TcpDiscoveryCustomEventMessage)msg);
+                else if (msg instanceof TcpDiscoveryCustomEventMessage)
+                    processCustomMessage((TcpDiscoveryCustomEventMessage)msg);
 
-            else if (msg instanceof TcpDiscoveryClientPingRequest)
-                processClientPingRequest((TcpDiscoveryClientPingRequest)msg);
+                else if (msg instanceof TcpDiscoveryClientPingRequest)
+                    
processClientPingRequest((TcpDiscoveryClientPingRequest)msg);
 
-            else
-                assert false : "Unknown message type: " + 
msg.getClass().getSimpleName();
+                else
+                    assert false : "Unknown message type: " + 
msg.getClass().getSimpleName();
 
-            if (spi.ensured(msg) && redirectToClients(msg))
-                msgHist.add(msg);
+                if (spi.ensured(msg) && redirectToClients(msg))
+                    msgHist.add(msg);
 
-            if (msg.senderNodeId() != null && 
!msg.senderNodeId().equals(getLocalNodeId())) {
-                // Received a message from remote node.
-                onMessageExchanged();
+                if (msg.senderNodeId() != null && 
!msg.senderNodeId().equals(getLocalNodeId())) {
+                    // Received a message from remote node.
+                    onMessageExchanged();
 
-                // Reset the failure flag.
-                failureThresholdReached = false;
+                    // Reset the failure flag.
+                    failureThresholdReached = false;
+                }
+
+                spi.stats.onMessageProcessingFinished(msg);
             }
+            catch (AssertionError e) {
+                e.printStackTrace();
+
+                synchronized (System.out) {
+                    System.out.println("Error: " + e + " " + 
Thread.currentThread().getName());
+
+                    for (String debug : debugLog) {
+                        System.out.println(debug);
+                    }
+
+                    System.exit(33);
+                }
 
-            spi.stats.onMessageProcessingFinished(msg);
+                System.exit(111);
+            }
         }
 
         /** {@inheritDoc} */
@@ -2679,11 +2694,11 @@ class ServerImpl extends TcpDiscoveryImpl {
 
                         if (log.isDebugEnabled())
                             log.debug("Pending message has been sent to local 
node [msg=" + msg.id() +
-                                ", pendingMsgId=" + pendingMsg + ", next=" + 
next.id() + ']');
+                                ", pendingMsgId=" + pendingMsg + ", next=" + 
(next != null ? next.id() : null) + ']');
 
                         if (debugMode)
                             debugLog("Pending message has been sent to local 
node [msg=" + msg.id() +
-                                ", pendingMsgId=" + pendingMsg + ", next=" + 
next.id() + ']');
+                                ", pendingMsgId=" + pendingMsg + ", next=" + 
(next != null ? next.id() : null) + ']');
                     }
                 }
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/3c4e192b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
index 2786d0b..958a40e 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryImpl.java
@@ -62,14 +62,14 @@ abstract class TcpDiscoveryImpl {
     protected TcpDiscoveryNode locNode;
 
     /** Debug mode. */
-    protected boolean debugMode;
+    protected boolean debugMode = true;
 
     /** Debug messages history. */
-    private int debugMsgHist = 512;
+    private int debugMsgHist = 10 * 1024;
 
     /** Received messages. */
     @SuppressWarnings("FieldAccessedSynchronizedAndUnsynchronized")
-    protected ConcurrentLinkedDeque<String> debugLog;
+    protected static final ConcurrentLinkedDeque<String> debugLog = new 
ConcurrentLinkedDeque<>();
 
     /**
      * @param spi Adapter.

Reply via email to