This is an automated email from the ASF dual-hosted git repository.

jensdeppe pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/develop by this push:
     new 403eae0  GEODE-9068: Update documents to show removal of unsupported 
commands category (#6239)
403eae0 is described below

commit 403eae00de5ddca2cbe85f542b684f7fe1cb0cea
Author: John Hutchison <jhutchi...@gmail.com>
AuthorDate: Fri Apr 9 11:10:22 2021 -0400

    GEODE-9068: Update documents to show removal of unsupported commands 
category (#6239)
    
     - make readme commands an unordered list
     - remove text related to unsupported commands in readme
     - alphabetize list of commands in SupportedCommands Junit Test for easy 
comparison
     - remove references to unsupported commands from docs page
     - remove duplicate server category in RedisCommandType
    
    Co-authored-by: john Hutchison <hutchiso...@vmware.com>
    Co-authored-by: Dave Barnes <dav...@vmware.com>
---
 geode-apis-compatible-with-redis/README.md         | 437 ++++++++-------------
 .../geode/redis/internal/RedisCommandType.java     |   4 +-
 .../redis/internal/SupportedCommandsJUnitTest.java |  14 +-
 .../images/geode_apis_compatible_with_redis.png    | Bin 62103 -> 0 bytes
 .../geode_apis_compatible_with_redis.svg           |  19 +
 .../geode_apis_compatible_with_redis.html.md.erb   | 175 +++++++--
 6 files changed, 324 insertions(+), 325 deletions(-)

diff --git a/geode-apis-compatible-with-redis/README.md 
b/geode-apis-compatible-with-redis/README.md
index 62d62fe..db7d5e9 100644
--- a/geode-apis-compatible-with-redis/README.md
+++ b/geode-apis-compatible-with-redis/README.md
@@ -11,95 +11,59 @@
 
 ## <a name="introduction"></a>Introduction
 
-The Geode APIs compatible with Redis allows an application to send Redis 
commands to Geode. This will allow users to 
-switch seamlessly from native Redis to Geode as a data store/caching solution. 
+The Geode APIs compatible with Redis allow Geode to function as a drop-in 
replacement for a highly-available Redis data store, letting Redis applications 
take advantage of Geode’s scaling capabilities without changing their client 
code. 
 
-The API allows Geode to listen for and interpret incoming Redis commands on a 
designated port.
+Redis clients connect to a Geode server in the same way they connect to a 
Redis server, using a hostname and a port number, with optional password 
authentication.
 
-## <a name="how-to-try-it"></a>How To Try It
-
-The Geode APIs compatible with Redis is currently in early access. We’ll build 
the develop branch of Apache Geode
-and then connect the [Redis-CLI](https://redis.io/topics/quickstart) to that 
instance.
-
-**Note:** Currently Geode requires **Java 8 JDK** to build.
-
-### <a name="building-apache-geode"></a>Supported Redis Commands
+### <a name="redis-commands"></a>Supported Redis Commands
 
-Not all Redis commands are currently supported. The current set of supported 
Redis commands is listed [here](#redis-command-status).
+Not all Redis commands are supported. See [Supported Redis 
Commands](#supported-redis-commands) for the implemented subset.
 
-### <a name="building-apache-geode"></a>Building Apache Geode
-The Apache Geode source code can be found here
+## <a name="how-to-try-it"></a>How To Try It
 
-1. In a terminal, git clone the Geode repo:
-    ```commandline
-    $ git clone https://github.com/apache/geode.git
-    ```
+Install and configure Geode v1.14 or later.
 
-2. Change the working directory to the Geode directory you cloned
-       ```commandline
-       $ cd geode
-    ```
+Use gfsh to start at least one server with a command of the form:
 
-3. Build the Geode application without running the test (REQUIRES JAVA 8)
-    ```commandline
-    $ ./gradlew assemble
-   ```
+```console
+start server \
+  --name=<serverName> \
+  --locators=<locatorPort> \
+  --compatible-with-redis-port=<compatibleWithRedisPort> \
+  --compatible-with-redis-bind-address=<compatibleWithRedisBindAddress> \
+  --compatible-with-redis-password=<compatibleWithRedisPassword>
+```
 
-4. Once the build has completed, navigate to the geode-assembly directory 
which contains the Apache 
-    Geode Shell - also referred to as GFSH:
-    ```commandline
-    $ cd geode-assembly/build/install/apache-geode/bin
-   ```
+If any of the options `compatible-with-redis-bind-address`, 
`compatible-with-redis-password`, or `compatible-with-redis-port` are included, 
a Geode server with APIs compatible with Redis will be started.
 
-5. Once in that folder run the following command:
-    ```commandline
-   $ ./gfsh
-   ```
+- Replace `<serverName>` with the name of your server.
 
-You should now see GFSH starting up with a version of 1.14.x.-build.x
+- Replace `<locatorPort>` with your locator port.
 
-![screenshot of GFSH running in the terminal](gfsh.png)
+- Replace `<compatibleWithRedisPort>` with the port that the Geode server 
listens on for Redis commands. The typical port used with a cluster compatible 
with Redis is 6379.
 
-### <a name="starting-a-server"></a>Starting a Geode Server with Redis Enabled
-**Note**: if you wish to run the Geode APIs compatible with Redis on the 
default Redis port (6379), make sure to stop
-any applications running on that port before starting the Geode server, 
especially any native Redis
-servers.
+- Replace `<compatibleWithRedisBindAddress>` with the address of the server 
host.
 
-Using GFSH enter the following commands:
+- Replace `<compatibleWithWithRedisPassword>` with the password clients use to 
authenticate.
 
-1. Start a locator. The locator tracks servers and server load. When a client 
requests a server 
-connection, the locator directs the client to one of the least loaded servers.
-[Learn 
more](https://geode.apache.org/docs/guide/12/configuring/running/running_the_locator.html).
 
-   ```commandline
-    gfsh> start locator
-    ``` 
+Your Geode instance should now be up and running (1 locator and 1 server) and 
ready to accept Redis 
+    commands.  
 
-2. After the locator has started, start a server that will be able to handle 
incoming Redis commands. 
+**Keep this terminal open and running so that you can easily shutdown the 
Geode instance when you are 
+    done working locally.**
 
-    For example:
-    ```commandline
-    gfsh> start server --name=redisServer1 --locators=localhost[10334] 
--server-port=0 --compatible-with-redis-port=6379
-    ```
-    * --name: A name you create for your server.
-    * --locators: This is the location of the locator you started in step 1. 
-    * --server-port: The port that Geode clients connect to.
-    * --compatible-with-redis-port: The port that your Redis client will 
connect to.
+To confirm the server is listening, in a separate terminal run:
 
-    Your Geode instance should now be up and running (1 locator and 1 server) 
and ready to accept Redis 
-    commands.  
+```console
+redis-cli -h <compatibleWithRedisBindAddress> -p <compatibleWithRedisPort> -a 
<compatibleWithRedisPassword> ping
+```
 
-    **Keep this terminal open and running so that you can easily shutdown the 
Geode instance when you are 
-    done working locally.**
+- Replace `<compatibleWithRedisBindAddress>`, `<compatibleWithRedisPort>`, and 
`<compatibleWithRedisPassword>` with the same values as the server.
 
-3. To confirm that things are running correctly, in a separate terminal run:
-      ```commandline
-    $ redis-cli
-      ```
-    If working correctly you should now be in the redis-cli and see 
`127.0.0.1:6379>`.  If you run the 
-    `PING` command you should receive a response of `PONG`.
+If the server is functioning properly, you should see a response of `PONG`.
 
-### <a name="adding-a-server"></a>Optional - Adding an Additional Geode server 
compatible with Redis
-If you’re interested in testing Geode scalability, in GFSH run the start 
server command again BUT 
+### <a name="adding-a-server"></a>Optional - Adding an additional Geode server 
with compatible with Redis APIS
+If you’re interested in testing Geode scalability, in gfsh run the `start 
server` command again BUT 
 make sure you change the `--name=` and `--redis-port=` parameters. 
 
 For example: 
@@ -108,19 +72,19 @@ For example:
    ```
 
 ### <a name="shutting-down"></a>Shutting Down 
-To shutdown the Geode instance you started, in the terminal with GFSH running 
type the following command
+To shut down the Geode instance you started, in the terminal with gfsh running 
type the following command
 
-   ```commandLine
+```commandLine
 $ shutdown --include-locators=true
-   ```
+```
        
-As this command will shut down the entire Geode instance/cluster, you will be 
prompted with the following choice: 
+This command shuts down the entire Geode instance/cluster. You are prompted 
with the following choice: 
 
 ```commandline
 As a lot of data in memory will be lost, including possibly events in queues, 
do you really want to shutdown the entire distributed system? (Y/n)
 ```
 
-To confirm that everything shutdown correctly, if you execute a Redis command 
in the redis-cli you should see the following message:
+To confirm that everything shut down correctly, if you execute a Redis command 
in the redis-cli you should see the following message:
 
 ```commandline
 Could not connect to Redis at 127.0.0.1:6379: Connection refused 
@@ -128,211 +92,136 @@ not connected>
 ```
 ### <a name="redis-commands"></a>Redis Commands
 
-The Geode APIs compatible with Redis currently implements a subset of the full 
Redis command set. Some commands
-are **unsupported** (see table below). Unsupported commands are available to 
use, but have not been
-fully tested. There is no guarantee they will work exactly as expected.
+The Geode APIs compatible with Redis implement a subset of the full Redis 
command set.
+
+#### <a name="supported-redis-commands"></a> Supported Redis Commands [Return 
to top](#introduction)
+- APPEND <br/>
+- AUTH <br/>
+- DECR <br/>
+- DECRBY <br/>
+- DEL <br/>
+- EXISTS <br/>
+- EXPIRE <br/>
+- EXPIREAT <br/>
+- GET <br/>
+- GETRANGE <br/>
+- HDEL <br/>
+- HEXISTS <br/>
+- HGET <br/>
+- HGETALL <br/>
+- HINCRBY <br/>
+- HINCRBYFLOAT <br/>
+- HLEN <br/>
+- HMGET <br/>
+- HMSET <br/>
+- HSCAN <sup>1</sup>  <br/>
+- HSET <br/>
+- HSETNX <br/>
+- HSTRLEN <br/>
+- HVALS <br/>
+- HKEYS <br/>
+- INCR <br/>
+- INCRBY <br/>
+- INCRBYFLOAT <br/>
+- INFO <sup>2</sup> <br/>
+- KEYS <br/>
+- MGET <br/>
+- PERSIST <br/>
+- PEXPIRE <br/>
+- PEXPIREAT <br/>
+- PING <br/>
+- PSUBSCRIBE <br/>
+- PTTL <br/>
+- PUBLISH <br/>
+- PUNSUBSCRIBE <br/>
+- QUIT <br/>
+- RENAME <br/>
+- SADD <br/>
+- SET <br/>
+- SETNX <br/>
+- SLOWLOG <sup>3</sup> <br/>
+- SMEMBERS <br/>
+- SREM <br/>
+- STRLEN <br/>
+- SUBSCRIBE <br/>
+- TTL <br/>
+- TYPE <br/>
+- UNSUBSCRIBE <br/>
 
-#### <a name="enable-unsupported-commands"></a>Enabling Unsupported Commands
+**NOTES:**
 
-If you already have Geode servers running with Redis enabled, you can execute 
the following
-command with gfsh to enable unsupported commands:
+<sup>1</sup>Redis accepts 64-bit signed integers for the HSCAN cursor and 
COUNT parameters. The Geode APIs compatible with Redis are limited to 32-bit 
integer values for these parameters.
+<br/>
+<sup>2</sup> INFO is implemented for the sections and fields listed below:
 
-```pre
-redis --enable-unsupported-commands
-```
+ - clients
 
-You can also enable unsupported commands when you start the Geode server by 
setting the Java property `enable-redis-unsupported-commands=true`:
+    - connected_clients
 
-```pre
-start server \
-  --J=-Denable-redis-unsupported-commands=true \
-  --name=<serverName> \
-  --locators=<locatorPort> \
-  --compatible-with-redis-port=<redisPort> \
-  --compatible-with-redis-bind-address=<redisBindAddress> \
-  --compatible-with-redis-password=<redisPassword>
-```
+    - blocked_clients (always returns 0)
 
-#### <a name="redis-command-status"></a>Redis Command Status [Return to 
top](#introduction)
-
-| Supported Commands   | Unsupported Commands<br>(Implemented - not tested)    
|    Commands Not Implemented           |
-|-----------------------|-------------------------------------------------------|-----------------------------------|
-| APPEND               | BITCOUNT                                              
| ACL CAT                               |
-| AUTH                 | BITOP                                                 
| ACL DELUSER                           |
-| DECRBY               | BITPOS                                                
| ACL GENPASS                           |
-| DEL                  | DBSIZE                                                
| ACL GETUSER                           |
-| EXISTS               | DECR                                                  
| ACL HELP                              |
-| EXPIRE               | ECHO                                                  
| ACL LIST                              |
-| EXPIREAT             | FLUSHALL                                              
| ACL LOAD                              |
-| GET                  | FLUSHDB                                               
| ACL LOG                               |
-| HGETALL                      | GETBIT                                        
        | ACL SAVE                              |
-| HMGET                | GETRANGE                                              
| ACL SETUSER                           |
-| HMSET                | GETSET                                                
| ACL USERS                             |
-| HSET                         | HDEL                                          
        | ACL WHOAMI                            |
-| HSETNX               | HEXISTS                                               
| BGREWRITEAOF                          |
-| HSTRLEN                      | HGET                                          
        | BGSAVE                                |
-| HLEN                 | HINCRBY                                               
| BITFIELD                              |
-| HVALS                | HINCRBYFLOAT                                          
| BLPOP                                 |
-| INFO                 | HKEYS                                                 
| BRPOP                                 |
-| KEYS                 | HSCAN[3]                                              
| BRPOPLPUSH                            |
-| PERSIST              | INCR                                                  
| BZPOPMAX                              |
-| PEXPIRE              | INCRBY                                                
| BZPOPMIN                              |
-| PEXPIREAT            | INCRBYFLOAT                                           
| CLIENT CACHING                        |
-| PING                 | MGET                                                  
| CLIENT GETNAME                        |
-| PSUBSCRIBE           | MSET                                                  
| CLIENT ID                             |
-| PTTL                 | MSETNX                                                
| CLIENT KILL                           |
-| PUNSUBSCRIBE         | PSETEX                                                
| CLIENT LIST                           |
-| QUIT                 | SCAN                                                  
| CLIENT PAUSE                          |
-| RENAME               | SCARD                                                 
| CLIENT REPLY                          |
-| SADD                 | SDIFF                                                 
| CLIENT SETNAME                        |
-| SET                   | SDIFFSTORE                                           
| CLIENT TRACKING                       |
-| SLOWLOG[2]            | SELECT                                               
| CLIENT UNBLOCK                        |
-| SMEMBERS              | SETBIT                                               
| CLUSTER ADDSLOTS                      |
-| SREM                  | SETEX                                                
| CLUSTER BUMPEPOCH                     |
-| SUBSCRIBE             | SETNX                                                
| CLUSTER COUNT-FAILURE-REPORTS         |
-| TTL                   | SETRANGE                                             
| CLUSTER COUNTKEYSINSLOT               |
-| TYPE                         | SHUTDOWN                                      
        | CLUSTER DELSLOTS                  |
-| UNSUBSCRIBE           | SINTER                                               
| CLUSTER FAILOVER                      |
-| PUBLISH               | SINTERSTORE                                          
| CLUSTER FLUSHSLOTS                |
-|                      | SISMEMBER                                             
| CLUSTER FORGET                    |
-|                      | SLOWLOG                                               
| CLUSTER GETKEYSINSLOT             |
-|                      | SMOVE                                                 
| CLUSTER INFO                          |
-|                      | SPOP                                                  
| CLUSTER KEYSLOT                   |
-|                      | SRANDMEMBER                                           
| CLUSTER MEET                      |
-|                      | SSCAN                                                 
| CLUSTER MYID                          |
-|                      | STRLEN                                                
| CLUSTER NODES                         |
-|                      | SUNION                                                
| CLUSTER REPLICAS                  |
-|                      | SUNIONSTORE                                           
| CLUSTER REPLICATE                     |
-|                      | TIME                                                  
| CLUSTER RESET                         |
-|                      | UNLINK [1]                                            
| CLUSTER SAVECONFIG                |
-|                      |                                                       
| CLUSTER SET-CONFIG-EPOCH          |
-|                      |                                                       
    | CLUSTER SETSLOT                   |
-|                      |                                                       
    | CLIENT GETREDIR                   |
-|                      |                                                       
| CLUSTER SLAVES                    |
-|                      |                                                       
| CLUSTER SLOTS                         |
-|                      |                                                       
| COMMAND                               |
-|                      |                                                       
| COMMAND COUNT                         |
-|                      |                                                       
| COMMAND GETKEYS                       |
-|                      |                                                       
| COMMAND INFO                          |
-|                      |                                                       
| CONFIG GET                            |
-|                      |                                                       
| CONFIG RESETSTAT                      |
-|                      |                                                       
| CONFIG REWRITE                        |
-|                      |                                                       
| CONFIG SET                            |
-|                      |                                                       
| DEBUG OBJECT                          |
-|                      |                                                       
| DEBUG SEGFAULT                        |
-|                      |                                                       
| DISCARD                               |
-|                      |                                                       
| DUMP                                  |
-|                      |                                                       
| EVAL                                  |
-|                      |                                                       
| EVALSHA                               |
-|                      |                                                       
| EXEC                                  |
-|                      |                                                       
| GEOADD                                |
-|                      |                                                       
| GEODIST                               |
-|                      |                                                       
| GEOHASH                               |
-|                      |                                                       
| GEOPOS                                |
-|                      |                                                       
| GEORADIUS                             |
-|                      |                                                       
| GEORADIUSBYMEMBER                     |
-|                      |                                                       
| LASTSAVE                              |
-|                      |                                                       
| LATENCY DOCTOR                        |
-|                      |                                                       
| LATENCY GRAPH                         |
-|                      |                                                       
| LATENCY HELP                          |
-|                      |                                                       
| LATENCY HISTORY                       |
-|                      |                                                       
| LATENCY LATEST                        |
-|                      |                                                       
| LATENCY RESET                         |
-|                      |                                                       
| LINDEX                                |
-|                      |                                                       
| LINSERT                               |
-|                      |                                                       
| LLEN                                  |
-|                      |                                                       
| LOLWUT                                |
-|                      |                                                       
| LPOP                                  |
-|                      |                                                       
| LPOS                                  |
-|                      |                                                       
| LPUSH                                 |
-|                      |                                                       
| LPUSHX                                |
-|                      |                                                       
| LRANGE                                |
-|                      |                                                       
| LREM                                  |
-|                      |                                                       
| LSET                                  |
-|                      |                                                       
| LTRIM                                 |
-|                      |                                                       
| MEMORY DOCTOR                         |
-|                      |                                                       
| MEMORY HELP                           |
-|                      |                                                       
| MEMORY MALLOC-STATS                   |
-|                      |                                                       
| MEMORY PURGE                          |
-|                      |                                                       
| MEMORY STATS                          |
-|                      |                                                       
| MEMORY USAGE                          |
-|                      |                                                       
| MIGRATE                               |
-|                      |                                                       
| MODULE LIST                           |
-|                      |                                                       
| MODULE LOAD                           |
-|                      |                                                       
| MODULE UNLOAD                         |
-|                      |                                                       
| MONITOR                               |
-|                      |                                                       
| MOVE                                  |
-|                      |                                                       
| MULTI                                 |
-|                      |                                                       
| OBJECT                                |
-|                      |                                                       
| PFADD                                 |
-|                      |                                                       
| PFCOUNT                               |
-|                      |                                                       
| PFMERGE                               |
-|                      |                                                       
| PSYNC                                 |
-|                      |                                                       
| PUBSUB                                |
-|                      |                                                       
| RANDOMKEY                             |
-|                      |                                                       
| READONLY                              |
-|                      |                                                       
| READWRITE                             |
-|                      |                                                       
| RENAMENX                              |
-|                      |                                                       
| REPLICAOF                             |
-|                      |                                                       
| RESTORE                               |
-|                      |                                                       
| ROLE                                  |
-|                      |                                                       
| RPOP                                  |
-|                      |                                                       
| RPOPLPUSH                             |
-|                      |                                                       
| RPUSH                                 |
-|                      |                                                       
| RPUSHX                                |
-|                      |                                                       
| SAVE                                  |
-|                      |                                                       
| SCRIPT DEBUG                          |
-|                      |                                                       
| SCRIPT EXISTS                         |
-|                      |                                                       
| SCRIPT FLUSH                          |
-|                      |                                                       
| SCRIPT KILL                           |
-|                      |                                                       
| SCRIPT LOAD                           |
-|                      |                                                       
| SLAVEOF                               |
-|                      |                                                       
| SORT                                  |
-|                      |                                                       
| STRALGO LCS                           |
-|                      |                                                       
| SWAPDB                                |
-|                      |                                                       
| SYNC                                  |
-|                      |                                                       
| TOUCH                                 |
-|                      |                                                       
| UNWATCH                               |
-|                      |                                                       
| WAIT                                  |
-|                      |                                                       
| WATCH                                 |
-|                      |                                                       
| XACK                                  |
-|                      |                                                       
| XADD                                  |
-|                      |                                                       
| XCLAIM                                |
-|                      |                                                       
| XDEL                                  |
-|                      |                                                       
| XGROUP                                |
-|                      |                                                       
| XINFO                                 |
-|                      |                                                       
| XLEN                                  |
-|                      |                                                       
| XPENDING                              |
-|                      |                                                       
| XRANGE                                |
-|                      |                                                       
| XREAD                                 |
-|                      |                                                       
| XREADGROUP GROUP                      |
-|                      |                                                       
| XREVRANGE                             |
-|                      |                                                       
| XTRIM                                 |
-|                      |                                                       
| ZADD                                  |
-|                      |                                                       
| ZCARD                                 |
-|                      |                                                       
| ZCOUNT                                |
-|                      |                                                       
| ZINCRBY                               |
-|                      |                                                       
| ZINTERSTORE                           |
-|                      |                                                       
| ZLEXCOUNT                             |
-|                      |                                                       
| ZPOPMAX                               |
-|                      |                                                       
| ZPOPMIN                               |
-|                      |                                                       
| ZRANGE                                |
-|                      |                                                       
| ZRANGEBYLEX                           |
-|                      |                                                       
| ZRANGEBYSCORE                         |
-|                      |                                                       
| ZRANK                                 |
-|                      |                                                       
| ZREM                                  |
-|                      |                                                       
| ZREMRANGEBYLEX                        |
-|                      |                                                       
| ZREMRANGEBYRANK                       |
-|                      |                                                       
| ZREMRANGEBYSCORE                      |
-|                      |                                                       
| ZREVRANGE                             |
-|                      |                                                       
| ZREVRANGEBYSCORE                      |
-|                      |                                                       
| ZREVRANK                              |
-|                      |                                                       
| ZSCAN                                 |
-|                      |                                                       
| ZSCORE                                |
-|                      |                                                       
| ZUNIONSTORE                           |
+ - cluster
 
-**NOTES:**
+    - cluster_enables (always returns 0)
+
+ - keyspace
+
+    - returns stats for db: 0
+
+ - memory
+
+    - maxmemory
+
+    - used_memory
+
+    - mem_fragmentation_ratio (always reports 1.00) 
+
+ - persistence
+
+    - loading (always returns 0)
+
+    - rdb_changes_since_last_save (always returns 0)
+
+    - rdb_last_save_time (always returns 0)
+
+ - replication
+
+    - role
+
+    - connected_slaves (always returns 0)
+
+ - server
+
+   - redis_version
+
+   - redis_mode
+
+   - tcp_port
+
+   - uptime_in_seconds
+
+   - uptime_in_days
+
+ - stats
+
+    - total_commands_processed
+
+    - instantaneous_ops_per_sec
+
+    - total_net_input_bytes
+
+    - instantaneous_input_kbps
+
+    - total_connections_received
+
+    - keyspace_hits
+
+    - keyspace_misses
+
+    - evicted_keys (always returns 0)
+
+    - rejected_connections (always returns 0)
+
+<br/>
+<sup>3</sup>  SLOWLOG is implemented as a NoOp.
 
-[1] - UNLINK is implemented as a synonym to DEL and does not unlink 
asynchronously.
-[2] - SLOWLOG is implemented as a NoOp.
-[3] - Redis accepts 64-bit signed integers for the HSCAN cursor and COUNT 
parameters. The Geode APIs compatible with Redis are limited to 32-bit integer 
values for these parameters.
diff --git 
a/geode-apis-compatible-with-redis/src/main/java/org/apache/geode/redis/internal/RedisCommandType.java
 
b/geode-apis-compatible-with-redis/src/main/java/org/apache/geode/redis/internal/RedisCommandType.java
index 3163b66..0307c86 100755
--- 
a/geode-apis-compatible-with-redis/src/main/java/org/apache/geode/redis/internal/RedisCommandType.java
+++ 
b/geode-apis-compatible-with-redis/src/main/java/org/apache/geode/redis/internal/RedisCommandType.java
@@ -190,6 +190,7 @@ public enum RedisCommandType {
 
   /************* Server *****************/
   SLOWLOG(new SlowlogExecutor(), SUPPORTED, new 
SlowlogParameterRequirements()),
+  INFO(new InfoExecutor(), SUPPORTED, new MaximumParameterRequirements(2, 
ERROR_SYNTAX)),
 
   /********** Publish Subscribe **********/
   SUBSCRIBE(new SubscribeExecutor(), SUPPORTED, new 
MinimumParameterRequirements(2)),
@@ -198,9 +199,6 @@ public enum RedisCommandType {
   PUNSUBSCRIBE(new PunsubscribeExecutor(), SUPPORTED, new 
MinimumParameterRequirements(1)),
   UNSUBSCRIBE(new UnsubscribeExecutor(), SUPPORTED, new 
MinimumParameterRequirements(1)),
 
-  /********** Server **********/
-  INFO(new InfoExecutor(), SUPPORTED, new MaximumParameterRequirements(2, 
ERROR_SYNTAX)),
-
   /***************************************
    ********* Internal Commands ***********
    ***************************************/
diff --git 
a/geode-apis-compatible-with-redis/src/test/java/org/apache/geode/redis/internal/SupportedCommandsJUnitTest.java
 
b/geode-apis-compatible-with-redis/src/test/java/org/apache/geode/redis/internal/SupportedCommandsJUnitTest.java
index 7bcdaae..0dfdbe4 100644
--- 
a/geode-apis-compatible-with-redis/src/test/java/org/apache/geode/redis/internal/SupportedCommandsJUnitTest.java
+++ 
b/geode-apis-compatible-with-redis/src/test/java/org/apache/geode/redis/internal/SupportedCommandsJUnitTest.java
@@ -40,23 +40,23 @@ public class SupportedCommandsJUnitTest {
       "EXPIREAT",
       "GET",
       "GETRANGE",
-      "HGET",
       "HDEL",
       "HEXISTS",
+      "HGET",
       "HGETALL",
+      "HINCRBY",
       "HINCRBYFLOAT",
+      "HLEN",
+      "HMGET",
       "HMSET",
+      "HSCAN",
       "HSET",
       "HSETNX",
-      "HLEN",
-      "HSCAN",
-      "HMGET",
       "HSTRLEN",
-      "HINCRBY",
       "HVALS",
       "HKEYS",
-      "INCRBY",
       "INCR",
+      "INCRBY",
       "INCRBYFLOAT",
       "INFO",
       "KEYS",
@@ -81,7 +81,7 @@ public class SupportedCommandsJUnitTest {
       "SUBSCRIBE",
       "TTL",
       "TYPE",
-      "UNSUBSCRIBE",
+      "UNSUBSCRIBE"
   };
 
   private final String[] unSupportedCommands = new String[] {
diff --git a/geode-docs/images/geode_apis_compatible_with_redis.png 
b/geode-docs/images/geode_apis_compatible_with_redis.png
deleted file mode 100644
index 5d75a98..0000000
Binary files a/geode-docs/images/geode_apis_compatible_with_redis.png and 
/dev/null differ
diff --git a/geode-docs/images_svg/geode_apis_compatible_with_redis.svg 
b/geode-docs/images_svg/geode_apis_compatible_with_redis.svg
new file mode 100644
index 0000000..f983cf8
--- /dev/null
+++ b/geode-docs/images_svg/geode_apis_compatible_with_redis.svg
@@ -0,0 +1,19 @@
+<svg width="1127" height="319" viewBox="0 0 1127 319" fill="none" 
xmlns="http://www.w3.org/2000/svg"; xmlns:xlink="http://www.w3.org/1999/xlink";>
+<rect width="1127" height="319" fill="white"/>
+<rect x="0.5" y="0.5" width="749" height="318" rx="3.5" fill="white" 
stroke="black"/>
+<rect x="50" y="86" width="467" height="147" fill="url(#pattern0)"/>
+<rect x="567" width="183" height="92" rx="4" fill="#A41F10"/>
+<path d="M596.48 40H598.964L593.798 27.634H591.296L586.13 40H588.632L589.568 
37.768H595.544L596.48 40ZM590.378 35.824L592.556 30.622L594.734 
35.824H590.378ZM600.601 40H602.851V35.842H605.983C608.629 35.842 610.609 34.15 
610.609 31.738C610.609 29.326 608.629 27.634 605.983 27.634H600.601V40ZM602.851 
33.772V29.704H605.731C607.261 29.704 608.323 30.478 608.323 31.738C608.323 
32.998 607.261 33.772 605.731 33.772H602.851ZM612.415 
40H614.647V27.634H612.415V40ZM620.596 40.216C622.774 40.216 624 [...]
+<path d="M881.006 51H883.49L878.324 38.634H875.822L870.656 51H873.158L874.094 
48.768H880.07L881.006 51ZM874.904 46.824L877.082 41.622L879.26 
46.824H874.904ZM890.546 41.478C889.16 41.478 888.044 42.108 887.306 
43.17V41.694H885.11V54.096H887.306V49.524C888.044 50.586 889.16 51.216 890.546 
51.216C893.012 51.216 894.812 49.2 894.812 46.338C894.812 43.494 893.012 41.478 
890.546 41.478ZM889.952 49.344C888.404 49.344 887.324 48.084 887.324 
46.338C887.324 44.592 888.404 43.35 889.952 43.35C891.5 [...]
+<path d="M881.111 164H883.595L878.429 151.634H875.927L870.761 
164H873.263L874.199 161.768H880.175L881.111 164ZM875.009 159.824L877.187 
154.622L879.365 159.824H875.009ZM890.65 154.478C889.264 154.478 888.148 155.108 
887.41 156.17V154.694H885.214V167.096H887.41V162.524C888.148 163.586 889.264 
164.216 890.65 164.216C893.116 164.216 894.916 162.2 894.916 159.338C894.916 
156.494 893.116 154.478 890.65 154.478ZM890.056 162.344C888.508 162.344 887.428 
161.084 887.428 159.338C887.428 157.592 888 [...]
+<line x1="750" y1="45.5" x2="836" y2="45.5" stroke="black"/>
+<line x1="750" y1="158.5" x2="836" y2="158.5" stroke="black"/>
+<circle cx="835.5" cy="45.5" r="1.5" fill="black"/>
+<circle cx="835.5" cy="158.5" r="1.5" fill="black"/>
+<defs>
+<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" 
height="1">
+<use xlink:href="#image0" transform="translate(0 -0.00215054) scale(0.00129032 
0.00409919)"/>
+</pattern>
+<image id="image0" width="775" height="245" 
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAwcAAAD1CAYAAAAF6onAAAAACXBIWXMAAC4jAAAuIwF4pT92AAAgAElEQVR4nO2dvW8jWZfeiy/GwTpRT7YbSQM7NEAO4NCwOCiAAKPmRHYmtrB5cwJq4ajZgOE1qKDZkR2xqXDhYChsIIBAoSXAwWaj+gtGzJy9YuTEAI2jeWq6ms0i7711b9WtqucHCPO+MxI/isWq85yP57S2221A6s24Px8EQXB/fXf5zI+aEEIIIYRk8RcemXoz7s+HQRD8KuJg3J+/avrxIIQQQggh2VAc1BgIg094h20KBEIIIYQQcgiKg5qyIwwSKBAIIYQQQkgmFAc1JEMYJFAgEEIIIYSQvVAcFEQvDM96Yeg8ID8iDBIKFQhFvG9CCCGEEJIfioPiWA
 [...]
+</defs>
+</svg>
diff --git 
a/geode-docs/tools_modules/geode_apis_compatible_with_redis.html.md.erb 
b/geode-docs/tools_modules/geode_apis_compatible_with_redis.html.md.erb
index 3c44c2f..4398b13 100644
--- a/geode-docs/tools_modules/geode_apis_compatible_with_redis.html.md.erb
+++ b/geode-docs/tools_modules/geode_apis_compatible_with_redis.html.md.erb
@@ -17,13 +17,13 @@ See the License for the specific language governing 
permissions and
 limitations under the License.
 -->
 
-The <%=vars.product_name%> APIs compatible with Redis allows 
<%=vars.product_name%> to function as a drop-in replacement for a
+The <%=vars.product_name%> APIs compatible with Redis allow 
<%=vars.product_name%> to function as a drop-in replacement for a
 highly-available Redis data store, letting Redis applications take advantage of
 <%=vars.product_name%>’s scaling capabilities without changing their client 
code. Redis clients connect to a <%=vars.product_name%>
 server in the same way they connect to a Redis server, using a hostname and a 
port number, with
 optional password authentication.
 
-<img src="../images/geode_apis_compatible_with_redis.png" class="image" />
+<img src="../images_svg/geode_apis_compatible_with_redis.svg" class="image" />
 
 ## <a id="using-the-api" class="no-quick-link"></a>Using the 
<%=vars.product_name%> API compatible with Redis
 
@@ -40,13 +40,15 @@ start server \
   --compatible-with-redis-password=<compatibleWithRedisPassword>
 ```
 
-If any of the options `compatible-with-redis-bind-address`, 
`compatible-with-redis-password`, or `compatible-with-redis-port` are included, 
a <%=vars.product_name%> server compatible with Redis will be started.
+If any of the options `compatible-with-redis-bind-address`, 
`compatible-with-redis-password`, or `compatible-with-redis-port`
+are included, a <%=vars.product_name%> server with APIs compatible with Redis 
will be started.
 
 Replace `<serverName>` with the name of your server.
 
 Replace `<locatorPort>` with your locator port.
 
-Replace `<compatibleWithRedisPort>` with the port that the 
<%=vars.product_name%> server listens on for Redis commands. The typical port 
used with a cluster compatible with Redis is 6379.
+Replace `<compatibleWithRedisPort>` with the port that the 
<%=vars.product_name%> server
+ listens on for Redis commands. The typical port used with a cluster 
compatible with Redis is 6379.
 
 Replace `<compatibleWithRedisBindAddress>` with the address of the server host.
 
@@ -64,53 +66,144 @@ If the server is functioning properly, you should see a 
response of `PONG`.
 
 ## <a id="supported-commands" class="no-quick-link"></a>Supported Redis 
Commands
 
-The <%=vars.product_name%> APIs compatible with Redis currently supports the 
following Redis commands.  See [Redis commands](https://redis.io/commands/) for 
a complete list of and more information on Redis commands.
+The <%=vars.product_name%> APIs compatible with Redis currently support the 
following Redis commands.
+<br/>
+
+ - APPEND <br/>
+ - AUTH <br/>
+ - DECR <br/>
+ - DECRBY <br/>
+ - DEL <br/>
+ - EXISTS <br/>
+ - EXPIRE <br/>
+ - EXPIREAT <br/>
+ - GET <br/>
+ - GETRANGE <br/>
+ - HDEL <br/>
+ - HEXISTS <br/>
+ - HGET <br/>
+ - HGETALL <br/>
+ - HINCRBY <br/>
+ - HINCRBYFLOAT <br/>
+ - HLEN <br/>
+ - HMGET <br/>
+ - HMSET <br/>
+ - HSCAN **[1]**  <br/>
+ - HSET <br/>
+ - HSETNX <br/>
+ - HSTRLEN <br/>
+ - HVALS <br/>
+ - HKEYS <br/>
+ - INCR <br/>
+ - INCRBY <br/>
+ - INCRBYFLOAT <br/>
+ - INFO **[2]**  <br/>
+ - KEYS <br/>
+ - MGET <br/>
+ - PERSIST <br/>
+ - PEXPIRE <br/>
+ - PEXPIREAT <br/>
+ - PING <br/>
+ - PSUBSCRIBE <br/>
+ - PTTL <br/>
+ - PUBLISH <br/>
+ - PUNSUBSCRIBE <br/>
+ - QUIT <br/>
+ - RENAME <br/>
+ - SADD <br/>
+ - SET <br/>
+ - SETNX <br/>
+ - SLOWLOG **[3]**  <br/>
+ - SMEMBERS <br/>
+ - SREM <br/>
+ - STRLEN <br/>
+ - SUBSCRIBE <br/>
+ - TTL <br/>
+ - TYPE <br/>
+ - UNSUBSCRIBE <br/>
+
+<br/>
+Commands not listed above are **not implemented**.
 
-**Note**: These commands are supported for Redis 5.
-**Note**: SLOWLOG is implemented as a NoOp for compatibility with some 
monitoring tools.
-**Note**: Redis accepts 64-bit signed integers for the HSCAN cursor and COUNT 
parameters. The Geode APIs compatible with Redis are limited to 32-bit integer 
values for these parameters.
+<br/>
+**NOTES:**
 
--   **Connection**: AUTH, PING, QUIT
--   **Hashes**: HDEL, HEXISTS, HGET, HGETALL, HINCRBY, HINCRBYFLOAT, HKEYS, 
HLEN, HMGET, HMSET, HSCAN, HSET, HSETNX, HSTRLEN, HVALS
--   **Keys**: DEL, EXISTS, EXPIRE, EXPIREAT, KEYS, PERSIST, PEXPIRE, 
PEXPIREAT, PTTL, RENAME, TTL,
-  TYPE
--   **Publish/Subscribe**: PUBLISH, PSUBSCRIBE, PUNSUBSCRIBE, SUBSCRIBE, 
UNSUBSCRIBE
--   **Server**: SLOWLOG, INFO
--   **Sets**: SADD, SMEMBERS, SREM
--   **Strings**: APPEND, DECR, DECRBY, GET, GETRANGE, INCR, INCRBY, 
INCRBYFLOAT, MGET, SET, SETNX, STRLEN
+These commands are supported for Redis 5.
 
-The following Redis commands are **unsupported** by <%=vars.produce_name%>'s 
APIs compatible with Redis. Unsupported
-commands are available to use, but have not been fully tested. There is no 
guarantee they will work
-exactly as expected.
+**[1]** Redis accepts 64-bit signed integers for the HSCAN cursor and COUNT 
parameters.
+ The Geode APIs compatible with Redis are limited to 32-bit integer values for 
these parameters.
 
--   **Connection**: ECHO, SELECT
--   **Keys**: SCAN, UNLINK
--   **Server**: DBSIZE, FLUSHALL (no async option), FLUSHDB (no async option), 
SHUTDOWN, TIME
--   **Sets**: SCARD, SDIFF, SDIFFSTORE, SINTER, SINTERSTORE, SISMEMBER, SMOVE, 
SPOP, SRANDMEMBER,
-  SSCAN, SUNION, SUNIONSTORE
--   **Strings**: BITCOUNT, BITOP, BITPOS, GETBIT, GETSET, MSET, MSETNX, 
PSETEX, SETBIT, SETEX, SETRANGE
+**[2]** INFO is implemented for the sections and fields listed below:
 
+ - clients
 
-If you already have some Geode servers running that are compatible with Redis, 
you can execute the
-following command with gfsh to enable unsupported commands:
+    - connected_clients
 
-```pre
-redis --enable-unsupported-commands
-```
+    - blocked_clients (always returns 0)
 
-You can also enable unsupported commands when you start the Geode server by 
setting the Java property `enable-redis-unsupported-commands=true`:
+ - cluster
 
-```pre
-start server \
-  --J=-Denable-redis-unsupported-commands=true \
-  --name=<serverName> \
-  --locators=<locatorPort> \
-  --compatible-with-redis-port=<compatibleWithRedisPort> \
-  --compatible-with-redis-bind-address=<compatibleWithRedisBindAddress> \
-  --compatible-with-redis-password=<compatibleWithRedisPassword>
-```
+    - cluster_enables (always returns 0)
 
-Commands not listed above are **not implemented**.
+ - keyspace
+
+    - returns stats for db: 0
+
+ - memory
+
+    - maxmemory
+
+    - used_memory
+
+    - mem_fragmentation_ratio (always reports 1.00)
+
+ - persistence
+
+    - loading (always returns 0)
+
+    - rdb_changes_since_last_save (always returns 0)
+
+    - rdb_last_save_time (always returns 0)
+
+ - replication
+
+    - role
+
+    - connected_slaves (always returns 0)
+
+ - server
+
+   - redis_version
+
+   - redis_mode
+
+   - tcp_port
+
+   - uptime_in_seconds
+
+   - uptime_in_days
+
+ - stats
+
+    - total_commands_processed
+
+    - instantaneous_ops_per_sec
+
+    - total_net_input_bytes
+
+    - instantaneous_input_kbps
+
+    - total_connections_received
+
+    - keyspace_hits
+
+    - keyspace_misses
+
+    - evicted_keys (always returns 0)
+
+    - rejected_connections (always returns 0)
+
+**[3]**  SLOWLOG is implemented as a NoOp.
 
 ## <a id="advantages-over-redis" class="no-quick-link"></a>Advantages of 
<%=vars.product_name%> over Redis
 

Reply via email to