You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by an...@apache.org on 2016/11/16 10:58:17 UTC

[3/3] ignite git commit: IGNITE-3066 Review.

IGNITE-3066 Review.


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

Branch: refs/heads/master
Commit: f1e6257c5e179386bc29b767bd68b6b9a4e0669d
Parents: b8a2b8e
Author: Andrey Novikov <an...@apache.org>
Authored: Wed Nov 16 17:57:21 2016 +0700
Committer: Andrey Novikov <an...@apache.org>
Committed: Wed Nov 16 17:57:21 2016 +0700

----------------------------------------------------------------------
 .../client/suite/IgniteClientTestSuite.java     |  4 +++
 .../tcp/redis/RedisProtocolSelfTest.java        | 31 ++++++++++++++++----
 .../GridRedisConnectionCommandHandler.java      |  3 ++
 .../redis/GridRedisRestCommandHandler.java      |  3 +-
 .../redis/key/GridRedisDelCommandHandler.java   |  1 +
 .../key/GridRedisExistsCommandHandler.java      |  1 +
 .../string/GridRedisAppendCommandHandler.java   |  1 +
 .../string/GridRedisGetRangeCommandHandler.java | 11 +++----
 .../string/GridRedisIncrDecrCommandHandler.java |  3 ++
 .../string/GridRedisMGetCommandHandler.java     |  1 +
 .../string/GridRedisSetCommandHandler.java      |  3 +-
 .../string/GridRedisSetRangeCommandHandler.java |  3 ++
 .../string/GridRedisStrlenCommandHandler.java   |  1 +
 13 files changed, 52 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/clients/src/test/java/org/apache/ignite/internal/client/suite/IgniteClientTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/clients/src/test/java/org/apache/ignite/internal/client/suite/IgniteClientTestSuite.java b/modules/clients/src/test/java/org/apache/ignite/internal/client/suite/IgniteClientTestSuite.java
index cc8f9fa..932f9bb 100644
--- a/modules/clients/src/test/java/org/apache/ignite/internal/client/suite/IgniteClientTestSuite.java
+++ b/modules/clients/src/test/java/org/apache/ignite/internal/client/suite/IgniteClientTestSuite.java
@@ -57,6 +57,7 @@ import org.apache.ignite.internal.processors.rest.RestProcessorMultiStartSelfTes
 import org.apache.ignite.internal.processors.rest.RestProcessorStartSelfTest;
 import org.apache.ignite.internal.processors.rest.TaskCommandHandlerSelfTest;
 import org.apache.ignite.internal.processors.rest.protocols.tcp.TcpRestParserSelfTest;
+import org.apache.ignite.internal.processors.rest.protocols.tcp.redis.RedisProtocolSelfTest;
 import org.apache.ignite.testframework.IgniteTestSuite;
 
 /**
@@ -87,6 +88,9 @@ public class IgniteClientTestSuite extends TestSuite {
         // Test TCP rest processor with original memcache client.
         suite.addTestSuite(ClientMemcachedProtocolSelfTest.class);
 
+        // Test TCP rest processor with original REDIS client.
+        suite.addTestSuite(RedisProtocolSelfTest.class);
+
         suite.addTestSuite(RestProcessorStartSelfTest.class);
 
         // Test cache flag conversion.

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolSelfTest.java b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolSelfTest.java
index bd20b27..c059205 100644
--- a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolSelfTest.java
+++ b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolSelfTest.java
@@ -164,6 +164,7 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             Assert.assertNull(jedis.get("wrongKey"));
 
             jcache().put("setDataTypeKey", new HashSet<String>(Arrays.asList("1", "2")));
+
             try {
                 jedis.get("setDataTypeKey");
 
@@ -186,6 +187,7 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             Assert.assertNull(jedis.get("getSetNonExistingKey"));
 
             jcache().put("setDataTypeKey", new HashSet<String>(Arrays.asList("1", "2")));
+
             try {
                 jedis.getSet("setDataTypeKey", "0");
 
@@ -205,11 +207,12 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             jcache().put("getKey1", "getVal1");
             jcache().put("getKey2", 0);
 
-            List<String> result = jedis.mget("getKey1", "getKey2", "wrongKey");
-            Assert.assertTrue(result.contains("getVal1"));
-            Assert.assertTrue(result.contains("0"));
+            List<String> res = jedis.mget("getKey1", "getKey2", "wrongKey");
+
+            Assert.assertTrue(res.contains("getVal1"));
+            Assert.assertTrue(res.contains("0"));
 
-            // not supported.
+//            not supported.
 //            fail("Incompatible! getAll() does not return null values!");
 //            Assert.assertTrue(result.contains("nil"));
         }
@@ -229,11 +232,13 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             // test options.
             jedis.set("setKey1", "2", "nx");
             jedis.set("setKey3", "3", "nx");
+
             Assert.assertEquals("1", jcache().get("setKey1"));
             Assert.assertEquals("3", jcache().get("setKey3"));
 
             jedis.set("setKey1", "2", "xx");
             jedis.set("setKey4", "4", "xx");
+
             Assert.assertEquals("2", jcache().get("setKey1"));
             Assert.assertNull(jcache().get("setKey4"));
         }
@@ -260,11 +265,15 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             Assert.assertEquals(-1, (long)jedis.decr("newKeyDecr"));
 
             jcache().put("incrKey1", 1L);
+
             Assert.assertEquals(2L, (long)jedis.incr("incrKey1"));
+
             jcache().put("decrKey1", 1L);
+
             Assert.assertEquals(0L, (long)jedis.decr("decrKey1"));
 
             jcache().put("nonInt", "abc");
+
             try {
                 jedis.incr("nonInt");
 
@@ -303,8 +312,11 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             Assert.assertEquals(-2, (long)jedis.decrBy("newKeyDecr1", 2));
 
             jcache().put("incrKey2", 1L);
+
             Assert.assertEquals(3L, (long)jedis.incrBy("incrKey2", 2));
+
             jcache().put("decrKey2", 2L);
+
             Assert.assertEquals(0L, (long)jedis.decrBy("decrKey2", 2));
         }
     }
@@ -318,6 +330,7 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             Assert.assertEquals(12, (long)jedis.append("appendKey1", " World!"));
 
             jcache().put("setDataTypeKey", new HashSet<String>(Arrays.asList("1", "2")));
+
             try {
                 jedis.append("setDataTypeKey", "");
 
@@ -337,9 +350,11 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             Assert.assertEquals(0, (long)jedis.strlen("strlenKeyNonExisting"));
 
             jcache().put("strlenKey", "abc");
+
             Assert.assertEquals(3, (long)jedis.strlen("strlenKey"));
 
             jcache().put("setDataTypeKey", new HashSet<String>(Arrays.asList("1", "2")));
+
             try {
                 jedis.strlen("setDataTypeKey");
 
@@ -359,6 +374,7 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             Assert.assertEquals(0, (long)jedis.setrange("setRangeKey1", 0, ""));
 
             jcache().put("setRangeKey2", "abc");
+
             Assert.assertEquals(3, (long)jedis.setrange("setRangeKey2", 0, ""));
 
             Assert.assertEquals(3, (long)jedis.setrange("setRangeKeyPadded", 2, "a"));
@@ -382,9 +398,11 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             }
 
             jcache().put("setRangeKey3", "Hello World");
+
             Assert.assertEquals(11, (long)jedis.setrange("setRangeKey3", 6, "Redis"));
 
-            jcache().put("setDataTypeKey", new HashSet<String>(Arrays.asList("1", "2")));
+            jcache().put("setDataTypeKey", new HashSet<>(Arrays.asList("1", "2")));
+
             try {
                 jedis.setrange("setDataTypeKey", 0, "Redis");
 
@@ -404,12 +422,14 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
             Assert.assertEquals("", jedis.getrange("getRangeKeyNonExisting", 0, 0));
 
             jcache().put("getRangeKey", "This is a string");
+
             Assert.assertEquals("This", jedis.getrange("getRangeKey", 0, 3));
             Assert.assertEquals("ing", jedis.getrange("getRangeKey", -3, -1));
             Assert.assertEquals("This is a string", jedis.getrange("getRangeKey", 0, -1));
             Assert.assertEquals("string", jedis.getrange("getRangeKey", 10, 100));
 
             jcache().put("setDataTypeKey", new HashSet<String>(Arrays.asList("1", "2")));
+
             try {
                 jedis.getrange("setDataTypeKey", 0, 1);
 
@@ -459,6 +479,7 @@ public class RedisProtocolSelfTest extends GridCommonAbstractTest {
                         put(i, i);
                 }
             });
+
             Assert.assertEquals(100, (long)jedis.dbSize());
         }
     }

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisConnectionCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisConnectionCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisConnectionCommandHandler.java
index b8a042d..c322f84 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisConnectionCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisConnectionCommandHandler.java
@@ -55,14 +55,17 @@ public class GridRedisConnectionCommandHandler implements GridRedisCommandHandle
         switch (msg.command()) {
             case PING:
                 msg.setResponse(GridRedisProtocolParser.toSimpleString(PONG));
+
                 return new GridFinishedFuture<>(msg);
 
             case QUIT:
                 msg.setResponse(GridRedisProtocolParser.oKString());
+
                 return new GridFinishedFuture<>(msg);
 
             case ECHO:
                 msg.setResponse(GridRedisProtocolParser.toSimpleString(msg.key()));
+
                 return new GridFinishedFuture<>(msg);
         }
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisRestCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisRestCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisRestCommandHandler.java
index 696fea5..9c7a655 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisRestCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/GridRedisRestCommandHandler.java
@@ -58,8 +58,7 @@ public abstract class GridRedisRestCommandHandler implements GridRedisCommandHan
         try {
             return hnd.handleAsync(asRestRequest(msg))
                 .chain(new CX1<IgniteInternalFuture<GridRestResponse>, GridRedisMessage>() {
-                    @Override
-                    public GridRedisMessage applyx(IgniteInternalFuture<GridRestResponse> f)
+                    @Override public GridRedisMessage applyx(IgniteInternalFuture<GridRestResponse> f)
                         throws IgniteCheckedException {
                         GridRestResponse restRes = f.get();
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisDelCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisDelCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisDelCommandHandler.java
index 9447fe1..dc9af19 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisDelCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisDelCommandHandler.java
@@ -70,6 +70,7 @@ public class GridRedisDelCommandHandler extends GridRedisRestCommandHandler {
         restReq.command(CACHE_REMOVE_ALL);
 
         List<String> keys = msg.auxMKeys();
+
         Map<Object, Object> mget = U.newHashMap(keys.size());
 
         for (String key : keys)

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisExistsCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisExistsCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisExistsCommandHandler.java
index 7d0d457..26b3871 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisExistsCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/key/GridRedisExistsCommandHandler.java
@@ -70,6 +70,7 @@ public class GridRedisExistsCommandHandler extends GridRedisRestCommandHandler {
         restReq.command(CACHE_GET_ALL);
 
         List<String> keys = msg.auxMKeys();
+
         Map<Object, Object> mget = U.newHashMap(keys.size());
 
         for (String key : keys)

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisAppendCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisAppendCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisAppendCommandHandler.java
index 60d25fd..7e27621 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisAppendCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisAppendCommandHandler.java
@@ -104,6 +104,7 @@ public class GridRedisAppendCommandHandler extends GridRedisRestCommandHandler {
 
         if (restRes.getResponse() instanceof String) {
             int resLen = ((String)restRes.getResponse()).length();
+
             return GridRedisProtocolParser.toInteger(String.valueOf(resLen));
         }
         else

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisGetRangeCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisGetRangeCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisGetRangeCommandHandler.java
index 41b1eac..4478c19 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisGetRangeCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisGetRangeCommandHandler.java
@@ -84,19 +84,20 @@ public class GridRedisGetRangeCommandHandler extends GridRedisRestCommandHandler
 
         if (restRes.getResponse() instanceof String) {
             String res = String.valueOf(restRes.getResponse());
-            int startOffset;
-            int endOffset;
+            int startOff;
+            int endOff;
 
             try {
-                startOffset = boundedStartOffset(Integer.parseInt(params.get(START_OFFSET_POS)), res.length());
-                endOffset = boundedEndOffset(Integer.parseInt(params.get(END_OFFSET_POS)), res.length());
+                startOff = boundedStartOffset(Integer.parseInt(params.get(START_OFFSET_POS)), res.length());
+                endOff = boundedEndOffset(Integer.parseInt(params.get(END_OFFSET_POS)), res.length());
             }
             catch (NumberFormatException e) {
                 U.error(log, "Erroneous offset", e);
+
                 return GridRedisProtocolParser.toGenericError("Offset is not an integer");
             }
 
-            return GridRedisProtocolParser.toBulkString(res.substring(startOffset, endOffset));
+            return GridRedisProtocolParser.toBulkString(res.substring(startOff, endOff));
         }
         else
             return GridRedisProtocolParser.toTypeError("Operation against a key holding the wrong kind of value");

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisIncrDecrCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisIncrDecrCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisIncrDecrCommandHandler.java
index 219768b..382696d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisIncrDecrCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisIncrDecrCommandHandler.java
@@ -108,12 +108,15 @@ public class GridRedisIncrDecrCommandHandler extends GridRedisRestCommandHandler
             case INCR:
             case INCRBY:
                 restReq.command(ATOMIC_INCREMENT);
+
                 break;
 
             case DECR:
             case DECRBY:
                 restReq.command(ATOMIC_DECREMENT);
+
                 break;
+
             default:
                 assert false : "Unexpected command received";
         }

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisMGetCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisMGetCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisMGetCommandHandler.java
index e5406c6..87557d6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisMGetCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisMGetCommandHandler.java
@@ -70,6 +70,7 @@ public class GridRedisMGetCommandHandler extends GridRedisRestCommandHandler {
         restReq.command(CACHE_GET_ALL);
 
         List<String> keys = msg.auxMKeys();
+
         Map<Object, Object> mget = U.newHashMap(keys.size());
 
         for (String key : keys)

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetCommandHandler.java
index 8eb0b3f..c33a8ca 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetCommandHandler.java
@@ -79,7 +79,6 @@ public class GridRedisSetCommandHandler extends GridRedisRestCommandHandler {
         restReq.value(msg.aux(VAL_POS));
 
         if (msg.messageSize() >= 4) {
-
             List<String> params = msg.aux();
 
             // get rid of SET value.
@@ -90,7 +89,7 @@ public class GridRedisSetCommandHandler extends GridRedisRestCommandHandler {
             else if (isXx(params))
                 restReq.command(CACHE_REPLACE);
 
-            // TODO: IGNITE-4226, handle expiration options.
+            // TODO: IGNITE-4226: Need properly handle expiration parameter.
         }
 
         return restReq;

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetRangeCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetRangeCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetRangeCommandHandler.java
index dfd24a5..2cd931e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetRangeCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisSetRangeCommandHandler.java
@@ -73,6 +73,7 @@ public class GridRedisSetRangeCommandHandler extends GridRedisRestCommandHandler
             throw new GridRedisGenericException("Wrong number of arguments");
 
         int off;
+
         try {
             off = Integer.parseInt(msg.aux(OFFSET_POS));
         }
@@ -95,6 +96,7 @@ public class GridRedisSetRangeCommandHandler extends GridRedisRestCommandHandler
         Object resp = hnd.handle(getReq).getResponse();
 
         int totalLen = off + val.length();
+
         if (off < 0 || totalLen > MAX_OFFSET)
             throw new GridRedisGenericException("Offset is out of range");
 
@@ -106,6 +108,7 @@ public class GridRedisSetRangeCommandHandler extends GridRedisRestCommandHandler
 
         if (resp == null) {
             byte[] dst = new byte[totalLen];
+
             System.arraycopy(val.getBytes(), 0, dst, off, val.length());
 
             putReq.value(new String(dst));

http://git-wip-us.apache.org/repos/asf/ignite/blob/f1e6257c/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisStrlenCommandHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisStrlenCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisStrlenCommandHandler.java
index b4a88c9..b13ae62 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisStrlenCommandHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/redis/string/GridRedisStrlenCommandHandler.java
@@ -75,6 +75,7 @@ public class GridRedisStrlenCommandHandler extends GridRedisRestCommandHandler {
 
         if (restRes.getResponse() instanceof String) {
             int len = String.valueOf(restRes.getResponse()).length();
+
             return GridRedisProtocolParser.toInteger(String.valueOf(len));
         }
         else