envoyproxy/envoy

envoy redis_proxy can‘t support RESP3 HELLO CMD

Open

#17,571 opened on Aug 3, 2021

View on GitHub
 (14 comments) (2 reactions) (0 assignees)C++ (5,373 forks)batch import
area/redishelp wanted

Repository metrics

Stars
 (27,997 stars)
PR merge metrics
 (Avg merge 8d) (378 merged PRs in 30d)

Description

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