envoyproxy / envoyproxy/envoy

envoy redis_proxy can‘t support RESP3 HELLO CMD

Open
#17,571 14 comments 2 reactions 0 assignees View on GitHub
area/redis help wanted
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 20h
Merged PRs (30d)
437

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](https://user-images.githubusercontent.com/51730550/127946495-b709586a-ae24-44ea-a784-fdc16c85a58d.png)

2) if envoy not config downstream_auth_password,then use lettuce connect, envoy will return `-unsupported command 'HELLO'`
![image](https://user-images.githubusercontent.com/51730550/127946542-927ea2e3-40cb-4820-aaa1-d05c8f84e098.png)

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](https://github.com/envoyproxy/envoy/files/6920627/envoy-redis-proxy-HELLO.yml.txt)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.