Repository: incubator-ignite
Updated Branches:
  refs/heads/ignite-838 [created] 95f8fb27c


# ignite-838


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

Branch: refs/heads/ignite-838
Commit: 95f8fb27cf26561ebcf9e06de4d1f4307f4549b3
Parents: 5854f1d
Author: sboikov <sboi...@gridgain.com>
Authored: Wed Apr 29 17:46:54 2015 +0300
Committer: sboikov <sboi...@gridgain.com>
Committed: Wed Apr 29 17:46:54 2015 +0300

----------------------------------------------------------------------
 .../apache/ignite/internal/util/nio/GridDirectParser.java    | 3 +++
 .../main/java/org/apache/ignite/spi/IgniteSpiAdapter.java    | 8 ++++++++
 .../ignite/spi/communication/tcp/TcpCommunicationSpi.java    | 8 ++++----
 3 files changed, 15 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/95f8fb27/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridDirectParser.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridDirectParser.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridDirectParser.java
index d632cac..889a79d 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridDirectParser.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridDirectParser.java
@@ -62,6 +62,9 @@ public class GridDirectParser implements GridNioParser {
         if (msg == null && buf.hasRemaining()) {
             msg = msgFactory.create(buf.get());
 
+            if (msg == null)
+                return null;
+
             ses.addMeta(READER_META_KEY, reader = 
formatter.reader(msgFactory));
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/95f8fb27/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java 
b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
index b43f8a5..760d2a1 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
@@ -716,6 +716,14 @@ public abstract class IgniteSpiAdapter implements 
IgniteSpi, IgniteSpiManagement
 
         /** {@inheritDoc} */
         @Override public MessageFactory messageFactory() {
+            if (stopping) {
+                return new MessageFactory() {
+                    @Nullable @Override public Message create(byte type) {
+                        return null;
+                    }
+                };
+            }
+
             return null;
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/95f8fb27/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
 
b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index 2d5c541..23d4c81 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -1341,7 +1341,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
         // If configured TCP port is busy, find first available in range.
         for (int port = locPort; port < locPort + locPortRange; port++) {
             try {
-                MessageFactory messageFactory = new MessageFactory() {
+                MessageFactory msgFactory = new MessageFactory() {
                     private MessageFactory impl;
 
                     @Nullable @Override public Message create(byte type) {
@@ -1354,7 +1354,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
                     }
                 };
 
-                MessageFormatter messageFormatter = new MessageFormatter() {
+                MessageFormatter msgFormatter = new MessageFormatter() {
                     private MessageFormatter impl;
 
                     @Override public MessageWriter writer() {
@@ -1376,7 +1376,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
                     }
                 };
 
-                GridDirectParser parser = new GridDirectParser(messageFactory, 
messageFormatter);
+                GridDirectParser parser = new GridDirectParser(msgFactory, 
msgFormatter);
 
                 IgnitePredicate<Message> skipRecoveryPred = new 
IgnitePredicate<Message>() {
                     @Override public boolean apply(Message msg) {
@@ -1403,7 +1403,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
                         .writeTimeout(sockWriteTimeout)
                         .filters(new GridNioCodecFilter(parser, log, true),
                             new GridConnectionBytesVerifyFilter(log))
-                        .messageFormatter(messageFormatter)
+                        .messageFormatter(msgFormatter)
                         .skipRecoveryPredicate(skipRecoveryPred)
                         .build();
 

Reply via email to