This is an automated email from the ASF dual-hosted git repository. upthewaterspout pushed a commit to branch feature/redis-performance-testing in repository https://gitbox.apache.org/repos/asf/geode.git
commit 8481a3474581c4adecc2ba90aaf2b83a51b27901 Author: Jens Deppe <[email protected]> AuthorDate: Fri Feb 19 20:01:50 2021 -0800 Add READONLY command for go radix client suport --- .../geode/redis/internal/RedisCommandType.java | 3 ++- .../internal/executor/server/CommandExecutor.java | 10 +++----- ...{CommandExecutor.java => ReadonlyExecutor.java} | 29 ++-------------------- 3 files changed, 7 insertions(+), 35 deletions(-) diff --git a/geode-redis/src/main/java/org/apache/geode/redis/internal/RedisCommandType.java b/geode-redis/src/main/java/org/apache/geode/redis/internal/RedisCommandType.java index 3e86e94..fd2429d 100755 --- a/geode-redis/src/main/java/org/apache/geode/redis/internal/RedisCommandType.java +++ b/geode-redis/src/main/java/org/apache/geode/redis/internal/RedisCommandType.java @@ -76,6 +76,7 @@ import org.apache.geode.redis.internal.executor.server.CommandExecutor; import org.apache.geode.redis.internal.executor.server.DBSizeExecutor; import org.apache.geode.redis.internal.executor.server.FlushAllExecutor; import org.apache.geode.redis.internal.executor.server.InfoExecutor; +import org.apache.geode.redis.internal.executor.server.ReadonlyExecutor; import org.apache.geode.redis.internal.executor.server.ShutDownExecutor; import org.apache.geode.redis.internal.executor.server.SlowlogExecutor; import org.apache.geode.redis.internal.executor.server.TimeExecutor; @@ -281,6 +282,7 @@ public enum RedisCommandType { /*********** CLUSTER **********/ CLUSTER(new ClusterExecutor(), UNSUPPORTED, new MinimumParameterRequirements(1)), + READONLY(new ReadonlyExecutor(), UNSUPPORTED, new MinimumParameterRequirements(1)), /////////// UNIMPLEMENTED ///////////////////// @@ -333,7 +335,6 @@ public enum RedisCommandType { PSYNC(null, UNIMPLEMENTED), PUBSUB(null, UNIMPLEMENTED), RANDOMKEY(null, UNIMPLEMENTED), - READONLY(null, UNIMPLEMENTED), READWRITE(null, UNIMPLEMENTED), RENAMENX(null, UNIMPLEMENTED), RESTORE(null, UNIMPLEMENTED), diff --git a/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/CommandExecutor.java b/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/CommandExecutor.java index 452ccc6..c0c8e06 100644 --- a/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/CommandExecutor.java +++ b/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/CommandExecutor.java @@ -32,21 +32,17 @@ public class CommandExecutor extends AbstractExecutor { "flushall", -1, Arrays.asList("write"), - 0, 0, 0 - ), + 0, 0, 0), Arrays.asList( "get", 2, Arrays.asList("readonly"), - 1, 1, 1 - ), + 1, 1, 1), Arrays.asList( "set", -3, Arrays.asList("write"), - 1, 1, 1 - ) - ); + 1, 1, 1)); return RedisResponse.array(response); } diff --git a/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/CommandExecutor.java b/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/ReadonlyExecutor.java similarity index 67% copy from geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/CommandExecutor.java copy to geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/ReadonlyExecutor.java index 452ccc6..aa3ae86 100644 --- a/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/CommandExecutor.java +++ b/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/server/ReadonlyExecutor.java @@ -15,39 +15,14 @@ package org.apache.geode.redis.internal.executor.server; -import java.util.Arrays; -import java.util.List; - import org.apache.geode.redis.internal.executor.AbstractExecutor; import org.apache.geode.redis.internal.executor.RedisResponse; import org.apache.geode.redis.internal.netty.Command; import org.apache.geode.redis.internal.netty.ExecutionHandlerContext; -public class CommandExecutor extends AbstractExecutor { +public class ReadonlyExecutor extends AbstractExecutor { @Override public RedisResponse executeCommand(Command command, ExecutionHandlerContext context) { - - List<Object> response = Arrays.asList( - Arrays.asList( - "flushall", - -1, - Arrays.asList("write"), - 0, 0, 0 - ), - Arrays.asList( - "get", - 2, - Arrays.asList("readonly"), - 1, 1, 1 - ), - Arrays.asList( - "set", - -3, - Arrays.asList("write"), - 1, 1, 1 - ) - ); - - return RedisResponse.array(response); + return RedisResponse.ok(); } }
