From 8fd7c524c766064afba275ada81fb841a9b84a72 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Tue, 26 May 2026 12:49:31 -0700 Subject: [PATCH] redis2: apply keyPrefix in KV methods (#9693) KvPut/KvGet/KvDelete bypassed store.getKey(), so filer.store.id and other KV writes landed outside the configured prefix. With a Redis ACL restricted to the prefix this errored with NOPERM; without the ACL the keys silently lived in the wrong namespace. --- weed/filer/redis2/universal_redis_store_kv.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/weed/filer/redis2/universal_redis_store_kv.go b/weed/filer/redis2/universal_redis_store_kv.go index ab85ccb61..54d834eb5 100644 --- a/weed/filer/redis2/universal_redis_store_kv.go +++ b/weed/filer/redis2/universal_redis_store_kv.go @@ -10,7 +10,7 @@ import ( func (store *UniversalRedis2Store) KvPut(ctx context.Context, key []byte, value []byte) (err error) { - _, err = store.Client.Set(ctx, string(key), value, 0).Result() + _, err = store.Client.Set(ctx, store.getKey(string(key)), value, 0).Result() if err != nil { return fmt.Errorf("kv put: %w", err) @@ -21,7 +21,7 @@ func (store *UniversalRedis2Store) KvPut(ctx context.Context, key []byte, value func (store *UniversalRedis2Store) KvGet(ctx context.Context, key []byte) (value []byte, err error) { - data, err := store.Client.Get(ctx, string(key)).Result() + data, err := store.Client.Get(ctx, store.getKey(string(key))).Result() if err == redis.Nil { return nil, filer.ErrKvNotFound @@ -32,7 +32,7 @@ func (store *UniversalRedis2Store) KvGet(ctx context.Context, key []byte) (value func (store *UniversalRedis2Store) KvDelete(ctx context.Context, key []byte) (err error) { - _, err = store.Client.Del(ctx, string(key)).Result() + _, err = store.Client.Del(ctx, store.getKey(string(key))).Result() if err != nil { return fmt.Errorf("kv delete: %w", err)