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

hqtran pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit ec9618a5ea375ec529154c6baffc2905bddf5d4e
Author: Quan Tran <hqt...@linagora.com>
AuthorDate: Thu Apr 17 15:57:25 2025 +0700

    JAMES-4124 Document RedisShake sample to migrate data from Redis to Kvrocks
---
 third-party/rspamd/README.md                            | 17 ++++++++++++++++-
 .../rspamd/sample-configuration/redis-shake/shake.toml  | 12 ++++++++++++
 2 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/third-party/rspamd/README.md b/third-party/rspamd/README.md
index eb374341bb..62e85cdf02 100644
--- a/third-party/rspamd/README.md
+++ b/third-party/rspamd/README.md
@@ -255,4 +255,19 @@ We document accordingly the docker compose setup:
   
   Please note that to make Rspamd work well with Kvrocks Sentinel:
   - Configure `slave-read-only no` in `kvrocks.conf` file (allow Rspamd to 
execute read-only Lua script to get its Bayes statistics against the Kvrocks 
replicas, which Kvrocks is strict about by default). 
-  - Use Rspamd `3.10` or later.
\ No newline at end of file
+  - Use Rspamd `3.10` or later.
+
+### Migrate Rspamd data from Redis to Kvrocks
+
+Hereby we document a sample to use 
[RedisShake](https://github.com/tair-opensource/RedisShake) to migrate data 
from Redis to Kvrocks.
+
+Sample command:
+```bash
+docker run --network=emaily \
+  --entrypoint "/bin/sh" \
+  -v ${PWD}/sample-configuration/redis-shake/shake.toml:/app/shake.toml \
+  -e SHAKE_SRC_ADDRESS=redis:6379 \
+  -e SHAKE_DST_ADDRESS=kvrocks:6379 \
+  ghcr.io/tair-opensource/redisshake:4.4.0 \
+  -c "./redis-shake /app/shake.toml"
+```
\ No newline at end of file
diff --git a/third-party/rspamd/sample-configuration/redis-shake/shake.toml 
b/third-party/rspamd/sample-configuration/redis-shake/shake.toml
new file mode 100644
index 0000000000..a5b01ae9d0
--- /dev/null
+++ b/third-party/rspamd/sample-configuration/redis-shake/shake.toml
@@ -0,0 +1,12 @@
+# For the full configuration, visit 
https://github.com/tair-opensource/RedisShake/blob/v4/shake.toml
+[scan_reader]
+address = "${SHAKE_SRC_ADDRESS}" # Source Redis IP
+username = ""               # keep empty if not using ACL
+password = ""               # keep empty if no authentication is required
+scan = true
+count = 10000               # number of keys to scan per iteration, should use 
a suitable batch size
+
+[redis_writer]
+address = "${SHAKE_DST_ADDRESS}" # Target Kvrocks IP
+username = ""               # keep empty if not using ACL
+password = ""               # keep empty if no authentication is required
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@james.apache.org
For additional commands, e-mail: notifications-h...@james.apache.org

Reply via email to