microsoft / garnet

Garnet is a remote cache-store from Microsoft Research that offers strong performance (throughput and latency), scalability, storage, recovery, cluster sharding, key migration, and replication features. Garnet can work with existing Redis clients.
https://microsoft.github.io/garnet/
MIT License
10.18k stars 508 forks source link

Protocol RESP3 is not available in the latest version of Garnet. #420

Closed kyuminMoon closed 4 months ago

kyuminMoon commented 4 months ago

Describe the bug

Protocol RESP3 was available in Garnet 1.0.8 and earlier versions, but when using the latest version, only connections using RESP2 are available. We are currently developing using the Lettuce library, and the default protocol setting for that library is RESP3. I know that this protocol is supported since Redis 6.x version, and in fact, it worked without any problems in version 1.0.8.

I am leaving the modified code that works now for other users.

val configuration = RedisStandaloneConfiguration(host, port)
        val clientConfig = LettuceClientConfiguration.builder()
            .clientOptions(ClientOptions.builder().protocolVersion(ProtocolVersion.RESP2).build())
            .build()
        val lettuceConnectionFactory = LettuceConnectionFactory(configuration)
        lettuceConnectionFactory.afterPropertiesSet()
        return lettuceConnectionFactory

Steps to reproduce the bug

val configuration = RedisStandaloneConfiguration(host, port) val lettuceConnectionFactory = LettuceConnectionFactory(configuration) lettuceConnectionFactory.afterPropertiesSet() return lettuceConnectionFactory

Expected behavior

No response

Screenshots

No response

Release version

v1.0.10

IDE

No response

OS version

No response

Additional context

No response

badrishc commented 4 months ago

Do you mean RESP3 does not work on 1.0.10 or do you mean the latest on main branch, which doesn't have a release version yet?

badrishc commented 4 months ago

Also, check and let me know if this PR fixes the problem with RESP3. Thanks for your assistance:

https://github.com/microsoft/garnet/pull/387

kyuminMoon commented 4 months ago

The version in question was the latest version of the docker image, and it was confirmed that the connection was established normally when using tag 1.0.10. The problem is occurring in the latest version of the main branch, which does not have a release version.

kyuminMoon commented 4 months ago

As a result of creating a docker image using the badrishc/async-resp branch of #387, the connection was successful. Thank you for checking.