envoyproxy/envoy

envoy redis_proxy can‘t support RESP3 HELLO CMD

Open

#17.571 geöffnet am 3. Aug. 2021

Auf GitHub ansehen
 (14 Kommentare) (2 Reaktionen) (0 zugewiesene Personen)C++ (5.373 Forks)batch import
area/redishelp wanted

Repository-Metriken

Stars
 (27.997 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 8T) (378 gemergte PRs in 30 T)

Beschreibung

Title: envoy redis_proxy can‘t support RESP3 HELLO CMD

Description:

I use a RESP3 redis client(lettuce) to connect envoy redis proxy,I found :

  1. if envoy config downstream_auth_password, the use lettuce connect, envoy will return -NOAUTH Authentication required. image

  2. if envoy not config downstream_auth_password,then use lettuce connect, envoy will return -unsupported command 'HELLO' image

If I use a RESP3 redis client(lettuce) to connect redis directly , there is no this problem.I think if envoy don't support HELLO,it should return -ERR unknown command 'HELLO' like redis server return , so redis client lettuce can siwtch to RESP2.

Repro steps:

  1. use https://github.com/lettuce-io/lettuce-core redis client (java) to connect envoy
  2. or use telnet like this [root@hadoop-master envoy]# telnet 127.0.0.1 63799 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. *5 $5 HELLO $1 3 $4 AUTH $7 default $8 foobared

Config: envoy-redis-proxy-HELLO.yml.txt

Contributor Guide