You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/06/05 21:48:00 UTC

[jira] [Commented] (GEODE-8223) Update documentation of expiration accuracy as well as supported, unsupported, and unimplemented commands in Redis API for Geode docs

    [ https://issues.apache.org/jira/browse/GEODE-8223?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17127105#comment-17127105 ] 

ASF GitHub Bot commented on GEODE-8223:
---------------------------------------

davebarnes97 commented on a change in pull request #5214:
URL: https://github.com/apache/geode/pull/5214#discussion_r436178644



##########
File path: geode-docs/tools_modules/redis_api_for_geode.html.md.erb
##########
@@ -60,30 +65,52 @@ If the server is functioning properly, you should see a response of `PONG`.
 
 The Redis API for <%=vars.product_name%> currently supports the following commands.  See [Redis commands](https://redis.io/commands/) for a complete list of and more information on Redis commands.
 
--   **Strings**: APPEND, GET, GETRANGE, SET
+**Note**: These commands are supported for Redis 5.
+
+-   **Connection**: AUTH, PING, QUIT
 -   **Hashes**: HGETALL, HMSET, HSET
--   **Sets**: SADD, SMEMBERS, SREM
+-   **Keys**: DEL, EXISTS, EXPIRE, EXPIREAT, KEYS, PERSIST, PEXPIRE, PEXPIREAT, PTTL, RENAME, TTL, TYPE
 -   **Publish/Subscribe**: PUBLISH, PSUBSCRIBE, PUNSUBSCRIBE, SUBSCRIBE, UNSUBSCRIBE
--   **Keys**: DEL, EXISTS, EXPIRE, PERSIST, PEXPIRE, PEXPIREAT, RENAME
+-   **Sets**: SADD, SMEMBERS, SREM
+-   **Strings**: APPEND, GET, SET
 
-The following Redis API for <%=vars.product_name%> commands are **experimental**:
+The following Redis API for <%=vars.product_name%> commands are **unsupported**. Unsupported
+commands are available to use, but have not been fully tested. There is no guarantee they will work
+exactly as expected.
 
--   **Strings**: BITCOUNT, BITOP, BITPOS, DECR, DECRBY, GETBIT, GETSET, INCR, INCRBY, INCRBYFLOAT, MGET,
-  MSET, MSETNX, PSETEX, SETBIT, SETEX, SETNX, STRLEN
--   **Lists**: LINDEX, LLEN, LPOP, LPUSH, LPUSHX, LRANGE, LREM, LSET, LTRIM, RPOP, RPUSH, RPUSHX
--   **Hashes**: HDEL, HEXISTS, HGET, HINCRBY, HINCRBYFLOAT, HKEYS, HMGET, HSETNX, HLEN, HSCAN, HVALS
+-   **Connection**: ECHO
+-   **Hashes**: HDEL, HEXISTS, HGET, HINCRBY, HINCRBYFLOAT, HKEYS, HLEN, HMGET, HSCAN, HSETNX, HVALS
+-   **Keys**: SCAN
+-   **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
--   **SortedSets**: ZADD, ZCARD, ZCOUNT, ZINCRBY, ZLEXCOUNT, ZRANGE, ZRANGEBYLEX, ZRANGEBYSCORE,
-  ZRANK, ZREM, ZREMRANGEBYLEX, ZREMRANGEBYRANK, ZREMRANGEBYSCORE, ZREVRANGE, ZREVRANGEBYSCORE,
-  ZREVRANK, ZSCAN, ZSCORE
--   **HyperLogLog**: PFADD, PFCOUNT, PFMERGE
--   **Keys**: DBSIZE, EXPIREAT, FLUSHDB, FLUSHALL, KEYS, PTTL, SCAN, TTL
--   **Transactions**: DISCARD, EXEC, MULTI
--   **Server**: AUTH, ECHO, PING, QUIT
+-   **Strings**: BITCOUNT, BITOP, BITPOS, DECR, DECRBY, GETBIT, GETRANGE, GETSET, INCR, INCRBY, INCRBYFLOAT, MGET,
+  MSET, MSETNX, PSETEX, SETBIT, SETEX, SETNX, SETRANGE, STRLEN
+
+
+To enable unsupported commands, the Geode server must be started with the Java property `enable-redis-unsupported-commands=true`:
+
+```pre
+start server \
+  --J=-Denable-redis-unsupported-commands=true \
+  --name=<serverName> \
+  --locators=<locatorPort> \
+  --redis-port=<redisPort> \
+  --redis-bind-address=<redisBindAddress> \
+  --redis-password=<redisPassword>
+```
+
+Commands not listed above are **not implemented**.
 
 ## <a id="advantages-of-<%=vars.product_name_lowercase%>-over-redis" class="no-quick-link"></a>Advantages of <%=vars.product_name%> over Redis
 
 <%=vars.product_name%>’s primary advantage is its **scalability**. While the Redis server is single threaded, <%=vars.product_name%> supports high concurrency. Many Redis clients can execute commands on the <%=vars.product_name%> cluster simultaneously.
 
-<%=vars.product_name%>'s architecture and management features help detect and resolve **network partitioning** problems without explicit management on the part of the Redis client.
\ No newline at end of file
+<%=vars.product_name%>'s architecture and management features help detect and resolve **network partitioning** problems without explicit management on the part of the Redis client.
+
+## <a id="expiration-accuracy" class="no-quick-link"></a>Expiration Accuracy
+
+Keys are expired in two ways, actively and passively:
+
+-   Expiration is evaluated whenever a key is accessed. If the key is due to expire, it is deleted. Active expiration is accurate to the millisecond.

Review comment:
       For clarity, please begin each bullet with the type of expiration it explains. A bit more stilted, stylistic, but worth it I think for ease of apprehension. Something like this:
   - With active expiration, expiration is evaluated..
   - With passive expiration, keys are evaluated every second...




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> Update documentation of expiration accuracy as well as supported, unsupported, and unimplemented commands in Redis API for Geode docs
> -------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: GEODE-8223
>                 URL: https://issues.apache.org/jira/browse/GEODE-8223
>             Project: Geode
>          Issue Type: Improvement
>          Components: docs, redis
>            Reporter: Sarah Abbey
>            Priority: Major
>
> Update documentation to match changes in Redis API for Geode.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)