You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by je...@apache.org on 2020/08/27 13:25:36 UTC
[geode] branch develop updated: GEODE-8448: Update README based on
user feedback (#5470)
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 0c2a8a3 GEODE-8448: Update README based on user feedback (#5470)
0c2a8a3 is described below
commit 0c2a8a3f2cc7d57cc7ddfd47944aa0fecb4f6655
Author: Ray Ingles <ri...@pivotal.io>
AuthorDate: Thu Aug 27 09:24:48 2020 -0400
GEODE-8448: Update README based on user feedback (#5470)
Co-authored-by: Ray Ingles <ri...@vmware.com>
---
geode-redis/README.md | 53 ++++++++++++++++++++++++++++++++++++++++++++-------
1 file changed, 46 insertions(+), 7 deletions(-)
diff --git a/geode-redis/README.md b/geode-redis/README.md
index a4be1de..cdd9bc3 100644
--- a/geode-redis/README.md
+++ b/geode-redis/README.md
@@ -6,19 +6,26 @@
[Starting a Geode Server with Redis Enabled](#starting-a-server)
[Adding an Additional Geode Redis Server](#adding-a-server)
[Shutting Down](#shutting-down)
-[Redis Commands](#redis-commands)
+[Redis Commands](#redis-commands)
+
## <a name="introduction"></a>Introduction
The Redis API for Geode 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 API allows Geode to listen for and interpret incoming Redis commands on a designated port. The
-current set of supported Redis commands are listed [here](#redis-commands).
+The API allows Geode to listen for and interpret incoming Redis commands on a designated port.
## <a name="how-to-try-it"></a>How To Try It
-We’ll build the develop branch of Apache Geode and then connect the [Redis-CLI](https://redis.io/topics/quickstart) to that instance.
+The Redis API for Geode 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
+
+Not all Redis commands are currently supported. The current set of supported Redis commands is listed [here](#redis-command-status).
### <a name="building-apache-geode"></a>Building Apache Geode
The Apache Geode source code can be found here
@@ -35,7 +42,7 @@ The Apache Geode source code can be found here
3. Build the Geode application without running the test (REQUIRES JAVA 8)
```commandline
- $ ./gradlew build -x test
+ $ ./gradlew assemble
```
4. Once the build has completed, navigate to the geode-assembly directory which contains the Apache
@@ -54,10 +61,15 @@ You should now see GFSH starting up with a version of 1.14.x.-build.x
![screenshot of GFSH running in the terminal](gfsh.png)
### <a name="starting-a-server"></a>Starting a Geode Server with Redis Enabled
+**Note**: if you wish to run the Geode Redis API 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.
+
Using GFSH enter the following commands:
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.
+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
```
@@ -86,7 +98,7 @@ connection, the locator directs the client to one of the least loaded servers. L
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`.
-### <a name="adding-a-server"></a>Adding an Additional Geode Redis Server
+### <a name="adding-a-server"></a>Optional - Adding an Additional Geode Redis Server
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.
@@ -116,6 +128,33 @@ not connected>
```
### <a name="redis-commands"></a>Redis Commands
+The Redis API for Geode 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.
+
+#### <a name="enable-unsupported-commands"></a>Enabling Unsupported Commands
+
+If you already have Geode servers running with Redis enabled, you can execute the following
+command with gfsh to enable unsupported commands:
+
+```pre
+redis --enable-unsupported-commands
+```
+
+You can also enable unsupported commands when you start the Geode server by setting 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>
+```
+
+#### <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 |