Open iwfun opened 2 years ago
hi, I want to use 'lettuce' to connect to this proxy, but its fail! The reason is that 'lettuce' need ‘HELLO’ command. Will this be supported later?
Same issue in spring session redis.
/usr/local/Cellar/openjdk@11/11.0.10/libexec/openjdk.jdk/Contents/Home/bin/java -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=64582:/Applications/IntelliJ IDEA.app/Contents/bin -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true -Dfile.encoding=UTF-8 -classpath /Users/jagger/projects/bf/basicai/backend/gateway/target/classes:/Users/jagger/.m2/repository/org/projectlombok/lombok/1.18.22/lombok-1.18.22.jar:/Users/jagger/.m2/repository/org/apache/commons/commons-pool2/2.11.1/commons-pool2-2.11.1.jar:/Users/jagger/.m2/repository/org/springframework/session/spring-session-data-redis/2.6.1/spring-session-data-redis-2.6.1.jar:/Users/jagger/.m2/repository/org/springframework/session/spring-session-core/2.6.1/spring-session-core-2.6.1.jar:/Users/jagger/.m2/repository/org/springframework/spring-jcl/5.3.14/spring-jcl-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/data/spring-data-redis/2.6.0/spring-data-redis-2.6.0.jar:/Users/jagger/.m2/repository/org/springframework/data/spring-data-keyvalue/2.6.0/spring-data-keyvalue-2.6.0.jar:/Users/jagger/.m2/repository/org/springframework/spring-tx/5.3.14/spring-tx-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/spring-oxm/5.3.14/spring-oxm-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/spring-context-support/5.3.14/spring-context-support-5.3.14.jar:/Users/jagger/.m2/repository/org/slf4j/slf4j-api/1.7.32/slf4j-api-1.7.32.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-webflux/2.6.2/spring-boot-starter-webflux-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter/2.6.2/spring-boot-starter-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-logging/2.6.2/spring-boot-starter-logging-2.6.2.jar:/Users/jagger/.m2/repository/ch/qos/logback/logback-classic/1.2.9/logback-classic-1.2.9.jar:/Users/jagger/.m2/repository/ch/qos/logback/logback-core/1.2.9/logback-core-1.2.9.jar:/Users/jagger/.m2/repository/org/apache/logging/log4j/log4j-to-slf4j/2.17.0/log4j-to-slf4j-2.17.0.jar:/Users/jagger/.m2/repository/org/apache/logging/log4j/log4j-api/2.17.0/log4j-api-2.17.0.jar:/Users/jagger/.m2/repository/org/slf4j/jul-to-slf4j/1.7.32/jul-to-slf4j-1.7.32.jar:/Users/jagger/.m2/repository/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5.jar:/Users/jagger/.m2/repository/org/yaml/snakeyaml/1.29/snakeyaml-1.29.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-json/2.6.2/spring-boot-starter-json-2.6.2.jar:/Users/jagger/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.13.1/jackson-datatype-jdk8-2.13.1.jar:/Users/jagger/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.13.1/jackson-datatype-jsr310-2.13.1.jar:/Users/jagger/.m2/repository/com/fasterxml/jackson/module/jackson-module-parameter-names/2.13.1/jackson-module-parameter-names-2.13.1.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-reactor-netty/2.6.2/spring-boot-starter-reactor-netty-2.6.2.jar:/Users/jagger/.m2/repository/io/projectreactor/netty/reactor-netty-http/1.0.14/reactor-netty-http-1.0.14.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-http/4.1.72.Final/netty-codec-http-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-http2/4.1.72.Final/netty-codec-http2-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-resolver-dns/4.1.72.Final/netty-resolver-dns-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-resolver-dns-native-macos/4.1.72.Final/netty-resolver-dns-native-macos-4.1.72.Final-osx-x86_64.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-native-epoll/4.1.72.Final/netty-transport-native-epoll-4.1.72.Final-linux-x86_64.jar:/Users/jagger/.m2/repository/io/projectreactor/netty/reactor-netty-core/1.0.14/reactor-netty-core-1.0.14.jar:/Users/jagger/.m2/repository/org/springframework/spring-web/5.3.14/spring-web-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/spring-beans/5.3.14/spring-beans-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/spring-webflux/5.3.14/spring-webflux-5.3.14.jar:/Users/jagger/.m2/repository/io/projectreactor/reactor-core/3.4.13/reactor-core-3.4.13.jar:/Users/jagger/.m2/repository/org/reactivestreams/reactive-streams/1.0.3/reactive-streams-1.0.3.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-data-redis/2.6.2/spring-boot-starter-data-redis-2.6.2.jar:/Users/jagger/.m2/repository/io/lettuce/lettuce-core/6.1.5.RELEASE/lettuce-core-6.1.5.RELEASE.jar:/Users/jagger/.m2/repository/io/netty/netty-common/4.1.72.Final/netty-common-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-handler/4.1.72.Final/netty-handler-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-resolver/4.1.72.Final/netty-resolver-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-buffer/4.1.72.Final/netty-buffer-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec/4.1.72.Final/netty-codec-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-tcnative-classes/2.0.46.Final/netty-tcnative-classes-2.0.46.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-transport/4.1.72.Final/netty-transport-4.1.72.Final.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-security/2.6.2/spring-boot-starter-security-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/spring-aop/5.3.14/spring-aop-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/security/spring-security-config/5.6.1/spring-security-config-5.6.1.jar:/Users/jagger/.m2/repository/org/springframework/spring-context/5.3.14/spring-context-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/security/spring-security-web/5.6.1/spring-security-web-5.6.1.jar:/Users/jagger/.m2/repository/org/springframework/spring-expression/5.3.14/spring-expression-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-actuator/2.6.2/spring-boot-starter-actuator-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-actuator-autoconfigure/2.6.2/spring-boot-actuator-autoconfigure-2.6.2.jar:/Users/jagger/.m2/repository/io/micrometer/micrometer-core/1.8.1/micrometer-core-1.8.1.jar:/Users/jagger/.m2/repository/org/hdrhistogram/HdrHistogram/2.1.12/HdrHistogram-2.1.12.jar:/Users/jagger/.m2/repository/org/latencyutils/LatencyUtils/2.0.3/LatencyUtils-2.0.3.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-devtools/2.6.2/spring-boot-devtools-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot/2.6.2/spring-boot-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/2.6.2/spring-boot-autoconfigure-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-configuration-processor/2.6.2/spring-boot-configuration-processor-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/cloud/spring-cloud-starter-gateway/3.1.0/spring-cloud-starter-gateway-3.1.0.jar:/Users/jagger/.m2/repository/org/springframework/cloud/spring-cloud-starter/3.1.0/spring-cloud-starter-3.1.0.jar:/Users/jagger/.m2/repository/org/springframework/cloud/spring-cloud-context/3.1.0/spring-cloud-context-3.1.0.jar:/Users/jagger/.m2/repository/org/springframework/security/spring-security-rsa/1.0.10.RELEASE/spring-security-rsa-1.0.10.RELEASE.jar:/Users/jagger/.m2/repository/org/bouncycastle/bcpkix-jdk15on/1.68/bcpkix-jdk15on-1.68.jar:/Users/jagger/.m2/repository/org/bouncycastle/bcprov-jdk15on/1.68/bcprov-jdk15on-1.68.jar:/Users/jagger/.m2/repository/org/springframework/cloud/spring-cloud-gateway-server/3.1.0/spring-cloud-gateway-server-3.1.0.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-validation/2.6.2/spring-boot-starter-validation-2.6.2.jar:/Users/jagger/.m2/repository/org/apache/tomcat/embed/tomcat-embed-el/9.0.56/tomcat-embed-el-9.0.56.jar:/Users/jagger/.m2/repository/org/hibernate/validator/hibernate-validator/6.2.0.Final/hibernate-validator-6.2.0.Final.jar:/Users/jagger/.m2/repository/jakarta/validation/jakarta.validation-api/2.0.2/jakarta.validation-api-2.0.2.jar:/Users/jagger/.m2/repository/org/jboss/logging/jboss-logging/3.4.2.Final/jboss-logging-3.4.2.Final.jar:/Users/jagger/.m2/repository/com/fasterxml/classmate/1.5.1/classmate-1.5.1.jar:/Users/jagger/.m2/repository/io/projectreactor/addons/reactor-extra/3.4.6/reactor-extra-3.4.6.jar:/Users/jagger/.m2/repository/com/playtika/reactivefeign/feign-reactor-spring-configuration/3.1.5/feign-reactor-spring-configuration-3.1.5.jar:/Users/jagger/.m2/repository/com/playtika/reactivefeign/feign-reactor-core/3.1.5/feign-reactor-core-3.1.5.jar:/Users/jagger/.m2/repository/com/playtika/reactivefeign/feign-reactor-cloud/3.1.5/feign-reactor-cloud-3.1.5.jar:/Users/jagger/.m2/repository/org/springframework/cloud/spring-cloud-starter-loadbalancer/3.1.0/spring-cloud-starter-loadbalancer-3.1.0.jar:/Users/jagger/.m2/repository/org/springframework/cloud/spring-cloud-loadbalancer/3.1.0/spring-cloud-loadbalancer-3.1.0.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-cache/2.6.2/spring-boot-starter-cache-2.6.2.jar:/Users/jagger/.m2/repository/com/stoyanr/evictor/1.0.0/evictor-1.0.0.jar:/Users/jagger/.m2/repository/com/playtika/reactivefeign/feign-reactor-webclient/3.1.5/feign-reactor-webclient-3.1.5.jar:/Users/jagger/.m2/repository/com/playtika/reactivefeign/feign-reactor-webclient-core/3.1.5/feign-reactor-webclient-core-3.1.5.jar:/Users/jagger/.m2/repository/io/projectreactor/netty/reactor-netty/1.0.14/reactor-netty-1.0.14.jar:/Users/jagger/.m2/repository/io/projectreactor/netty/incubator/reactor-netty-incubator-quic/0.0.3/reactor-netty-incubator-quic-0.0.3.jar:/Users/jagger/.m2/repository/io/netty/incubator/netty-incubator-codec-native-quic/0.0.24.Final/netty-incubator-codec-native-quic-0.0.24.Final-linux-x86_64.jar:/Users/jagger/.m2/repository/io/netty/incubator/netty-incubator-codec-classes-quic/0.0.24.Final/netty-incubator-codec-classes-quic-0.0.24.Final.jar:/Users/jagger/.m2/repository/commons-codec/commons-codec/1.15/commons-codec-1.15.jar:/Users/jagger/.m2/repository/io/projectreactor/netty/reactor-netty-http-brave/1.0.14/reactor-netty-http-brave-1.0.14.jar:/Users/jagger/.m2/repository/io/zipkin/brave/brave-instrumentation-http/5.13.2/brave-instrumentation-http-5.13.2.jar:/Users/jagger/.m2/repository/io/zipkin/brave/brave/5.13.2/brave-5.13.2.jar:/Users/jagger/.m2/repository/io/zipkin/reporter2/zipkin-reporter-brave/2.16.1/zipkin-reporter-brave-2.16.1.jar:/Users/jagger/.m2/repository/io/zipkin/reporter2/zipkin-reporter/2.16.1/zipkin-reporter-2.16.1.jar:/Users/jagger/.m2/repository/io/zipkin/zipkin2/zipkin/2.23.0/zipkin-2.23.0.jar:/Users/jagger/.m2/repository/io/netty/netty-all/4.1.72.Final/netty-all-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-dns/4.1.72.Final/netty-codec-dns-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-haproxy/4.1.72.Final/netty-codec-haproxy-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-memcache/4.1.72.Final/netty-codec-memcache-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-mqtt/4.1.72.Final/netty-codec-mqtt-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-redis/4.1.72.Final/netty-codec-redis-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-smtp/4.1.72.Final/netty-codec-smtp-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-socks/4.1.72.Final/netty-codec-socks-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-stomp/4.1.72.Final/netty-codec-stomp-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-codec-xml/4.1.72.Final/netty-codec-xml-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-handler-proxy/4.1.72.Final/netty-handler-proxy-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-rxtx/4.1.72.Final/netty-transport-rxtx-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-sctp/4.1.72.Final/netty-transport-sctp-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-udt/4.1.72.Final/netty-transport-udt-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-classes-epoll/4.1.72.Final/netty-transport-classes-epoll-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-native-unix-common/4.1.72.Final/netty-transport-native-unix-common-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-classes-kqueue/4.1.72.Final/netty-transport-classes-kqueue-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-resolver-dns-classes-macos/4.1.72.Final/netty-resolver-dns-classes-macos-4.1.72.Final.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-native-epoll/4.1.72.Final/netty-transport-native-epoll-4.1.72.Final-linux-aarch_64.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-native-kqueue/4.1.72.Final/netty-transport-native-kqueue-4.1.72.Final-osx-x86_64.jar:/Users/jagger/.m2/repository/io/netty/netty-transport-native-kqueue/4.1.72.Final/netty-transport-native-kqueue-4.1.72.Final-osx-aarch_64.jar:/Users/jagger/.m2/repository/io/netty/netty-resolver-dns-native-macos/4.1.72.Final/netty-resolver-dns-native-macos-4.1.72.Final-osx-aarch_64.jar:/Users/jagger/.m2/repository/org/springframework/spring-core/5.3.14/spring-core-5.3.14.jar:/Users/jagger/.m2/repository/ai/basic/basicai/common/1.0.0-SNAPSHOT/common-1.0.0-SNAPSHOT.jar:/Users/jagger/.m2/repository/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar:/Users/jagger/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.13.1/jackson-core-2.13.1.jar:/Users/jagger/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.13.1/jackson-databind-2.13.1.jar:/Users/jagger/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.13.1/jackson-annotations-2.13.1.jar:/Users/jagger/.m2/repository/io/github/openfeign/feign-core/11.7/feign-core-11.7.jar:/Users/jagger/.m2/repository/org/springframework/security/spring-security-core/5.6.1/spring-security-core-5.6.1.jar:/Users/jagger/.m2/repository/org/springframework/security/spring-security-crypto/5.6.1/spring-security-crypto-5.6.1.jar:/Users/jagger/.m2/repository/org/springframework/data/spring-data-jpa/2.6.0/spring-data-jpa-2.6.0.jar:/Users/jagger/.m2/repository/org/springframework/data/spring-data-commons/2.6.0/spring-data-commons-2.6.0.jar:/Users/jagger/.m2/repository/org/springframework/spring-orm/5.3.14/spring-orm-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/spring-jdbc/5.3.14/spring-jdbc-5.3.14.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-actuator/2.6.2/spring-boot-actuator-2.6.2.jar:/Users/jagger/.m2/repository/org/springframework/cloud/spring-cloud-commons/3.1.0/spring-cloud-commons-3.1.0.jar:/Users/jagger/.m2/repository/org/springframework/cloud/spring-cloud-openfeign-core/3.1.0/spring-cloud-openfeign-core-3.1.0.jar:/Users/jagger/.m2/repository/org/springframework/boot/spring-boot-starter-aop/2.6.2/spring-boot-starter-aop-2.6.2.jar:/Users/jagger/.m2/repository/org/aspectj/aspectjweaver/1.9.7/aspectjweaver-1.9.7.jar:/Users/jagger/.m2/repository/io/github/openfeign/form/feign-form-spring/3.8.0/feign-form-spring-3.8.0.jar:/Users/jagger/.m2/repository/io/github/openfeign/form/feign-form/3.8.0/feign-form-3.8.0.jar:/Users/jagger/.m2/repository/commons-fileupload/commons-fileupload/1.4/commons-fileupload-1.4.jar:/Users/jagger/.m2/repository/commons-io/commons-io/2.2/commons-io-2.2.jar ai.basic.basicai.gateway.adapter.api.Application
12:16:53.474 [Thread-0] DEBUG org.springframework.boot.devtools.restart.classloader.RestartClassLoader - Created RestartClassLoader org.springframework.boot.devtools.restart.classloader.RestartClassLoader@67fafcb0
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.6.2)
2022-01-22 12:16:54.977 INFO 7256 --- [ restartedMain] a.b.b.gateway.adapter.api.Application : Starting Application using Java 11.0.10 on jagger-mbp with PID 7256 (/Users/jagger/projects/bf/basicai/backend/gateway/target/classes started by jagger in /Users/jagger/projects/bf/basicai/backend/gateway)
2022-01-22 12:16:54.981 INFO 7256 --- [ restartedMain] a.b.b.gateway.adapter.api.Application : No active profile set, falling back to default profiles: default
2022-01-22 12:16:55.176 INFO 7256 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2022-01-22 12:16:55.177 INFO 7256 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2022-01-22 12:16:59.142 INFO 7256 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
2022-01-22 12:16:59.145 INFO 7256 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
2022-01-22 12:16:59.175 INFO 7256 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 9 ms. Found 0 Redis repository interfaces.
2022-01-22 12:16:59.652 INFO 7256 --- [ restartedMain] o.s.cloud.context.scope.GenericScope : BeanFactory id=e435dd77-a2f8-36bb-aa38-d192f16b13fe
2022-01-22 12:16:59.737 INFO 7256 --- [ restartedMain] trationDelegate$BeanPostProcessorChecker : Bean 'ai.basic.basicai.gateway.usecase.port.service.UserService' of type [reactivefeign.spring.config.ReactiveFeignClientFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-01-22 12:16:59.847 INFO 7256 --- [ restartedMain] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-01-22 12:16:59.848 INFO 7256 --- [ restartedMain] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-01-22 12:16:59.850 INFO 7256 --- [ restartedMain] trationDelegate$BeanPostProcessorChecker : Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2022-01-22 12:17:00.784 INFO 7256 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
2022-01-22 12:17:02.157 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [After]
2022-01-22 12:17:02.157 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Before]
2022-01-22 12:17:02.157 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Between]
2022-01-22 12:17:02.157 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Cookie]
2022-01-22 12:17:02.157 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Header]
2022-01-22 12:17:02.157 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Host]
2022-01-22 12:17:02.158 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Method]
2022-01-22 12:17:02.158 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Path]
2022-01-22 12:17:02.158 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Query]
2022-01-22 12:17:02.158 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [ReadBody]
2022-01-22 12:17:02.158 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [RemoteAddr]
2022-01-22 12:17:02.158 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [Weight]
2022-01-22 12:17:02.158 INFO 7256 --- [ restartedMain] o.s.c.g.r.RouteDefinitionRouteLocator : Loaded RoutePredicateFactory [CloudFoundryRouteService]
2022-01-22 12:17:03.163 INFO 7256 --- [ restartedMain] o.s.b.a.e.web.EndpointLinksResolver : Exposing 16 endpoint(s) beneath base path '/actuator'
2022-01-22 12:17:03.422 WARN 7256 --- [ restartedMain] iguration$LoadBalancerCaffeineWarnLogger : Spring Cloud LoadBalancer is currently working with the default cache. You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
2022-01-22 12:17:03.560 INFO 7256 --- [ restartedMain] o.s.b.web.embedded.netty.NettyWebServer : Netty started on port 8080
2022-01-22 12:17:03.590 INFO 7256 --- [ restartedMain] a.b.b.gateway.adapter.api.Application : Started Application in 10.095 seconds (JVM running for 13.07)
2022-01-22 12:17:04.778 WARN 7256 --- [oundedElastic-1] o.s.b.a.r.RedisReactiveHealthIndicator : Redis health check failed
org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to nlb.dev.basic.ai:6379
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.translateException(LettuceConnectionFactory.java:1689) ~[spring-data-redis-2.6.0.jar:2.6.0]
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1597) ~[spring-data-redis-2.6.0.jar:2.6.0]
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1383) ~[spring-data-redis-2.6.0.jar:2.6.0]
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1366) ~[spring-data-redis-2.6.0.jar:2.6.0]
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getSharedReactiveConnection(LettuceConnectionFactory.java:1117) ~[spring-data-redis-2.6.0.jar:2.6.0]
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getReactiveConnection(LettuceConnectionFactory.java:509) ~[spring-data-redis-2.6.0.jar:2.6.0]
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getReactiveConnection(LettuceConnectionFactory.java:103) ~[spring-data-redis-2.6.0.jar:2.6.0]
at reactor.core.publisher.MonoSupplier.call(MonoSupplier.java:86) ~[reactor-core-3.4.13.jar:3.4.13]
at reactor.core.publisher.FluxSubscribeOnCallable$CallableSubscribeOnSubscription.run(FluxSubscribeOnCallable.java:227) ~[reactor-core-3.4.13.jar:3.4.13]
at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68) ~[reactor-core-3.4.13.jar:3.4.13]
at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28) ~[reactor-core-3.4.13.jar:3.4.13]
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
Caused by: org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to nlb.dev.basic.ai:6379
at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.getConnection(LettucePoolingConnectionProvider.java:109) ~[spring-data-redis-2.6.0.jar:2.6.0]
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$ExceptionTranslatingConnectionProvider.getConnection(LettuceConnectionFactory.java:1595) ~[spring-data-redis-2.6.0.jar:2.6.0]
... 14 common frames omitted
Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to nlb.dev.basic.ai:6379
at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:78) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:56) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.AbstractRedisClient.getConnection(AbstractRedisClient.java:330) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.RedisClient.connect(RedisClient.java:216) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.lambda$getConnection$1(StandaloneConnectionProvider.java:115) ~[spring-data-redis-2.6.0.jar:2.6.0]
at java.base/java.util.Optional.orElseGet(Optional.java:369) ~[na:na]
at org.springframework.data.redis.connection.lettuce.StandaloneConnectionProvider.getConnection(StandaloneConnectionProvider.java:115) ~[spring-data-redis-2.6.0.jar:2.6.0]
at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.lambda$null$0(LettucePoolingConnectionProvider.java:97) ~[spring-data-redis-2.6.0.jar:2.6.0]
at io.lettuce.core.support.ConnectionPoolSupport$RedisPooledObjectFactory.create(ConnectionPoolSupport.java:211) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.support.ConnectionPoolSupport$RedisPooledObjectFactory.create(ConnectionPoolSupport.java:201) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at org.apache.commons.pool2.BasePooledObjectFactory.makeObject(BasePooledObjectFactory.java:70) ~[commons-pool2-2.11.1.jar:2.11.1]
at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:571) ~[commons-pool2-2.11.1.jar:2.11.1]
at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:298) ~[commons-pool2-2.11.1.jar:2.11.1]
at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:223) ~[commons-pool2-2.11.1.jar:2.11.1]
at io.lettuce.core.support.ConnectionPoolSupport$1.borrowObject(ConnectionPoolSupport.java:122) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.support.ConnectionPoolSupport$1.borrowObject(ConnectionPoolSupport.java:117) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at org.springframework.data.redis.connection.lettuce.LettucePoolingConnectionProvider.getConnection(LettucePoolingConnectionProvider.java:103) ~[spring-data-redis-2.6.0.jar:2.6.0]
... 15 common frames omitted
Caused by: io.lettuce.core.RedisCommandExecutionException: ERR unsupported command `hello`
at io.lettuce.core.internal.ExceptionFactory.createExecutionException(ExceptionFactory.java:137) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.internal.ExceptionFactory.createExecutionException(ExceptionFactory.java:110) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.protocol.AsyncCommand.completeResult(AsyncCommand.java:120) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.protocol.AsyncCommand.complete(AsyncCommand.java:111) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.protocol.CommandWrapper.complete(CommandWrapper.java:63) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.protocol.CommandHandler.complete(CommandHandler.java:746) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.protocol.CommandHandler.decode(CommandHandler.java:681) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.lettuce.core.protocol.CommandHandler.channelRead(CommandHandler.java:598) ~[lettuce-core-6.1.5.RELEASE.jar:6.1.5.RELEASE]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe.readReady(AbstractKQueueStreamChannel.java:544) ~[netty-transport-classes-kqueue-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe.readReady(AbstractKQueueChannel.java:383) ~[netty-transport-classes-kqueue-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.kqueue.KQueueEventLoop.processReady(KQueueEventLoop.java:211) ~[netty-transport-classes-kqueue-4.1.72.Final.jar:4.1.72.Final]
at io.netty.channel.kqueue.KQueueEventLoop.run(KQueueEventLoop.java:289) ~[netty-transport-classes-kqueue-4.1.72.Final.jar:4.1.72.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[netty-common-4.1.72.Final.jar:4.1.72.Final]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.72.Final.jar:4.1.72.Final]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.72.Final.jar:4.1.72.Final]
... 1 common frames omitted
Does anybody made it work with Jedis connector ?
It turns out it works with Jedis connector. But you may loose some feature according to https://docs.spring.io/spring-data-redis/docs/current/reference/html/#redis:connectors:connection
Here is the Maven config snippet for a Spring Boot application :
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<exclusions>
<exclusion>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
It also breaks Sidekiq 7+ since it uses a library redis-client which requires HELLO to go into RESP3.
Any update on when RESP3 is gonna be supported? - thanks.
Any update on when RESP3 is gonna be supported? - thanks.
his project has been not updated in recently two years. but I think it's easy to support RESP3, just to run Hello command after proxy connects to redis servers, and client don't need to run Hello. But the client using resp v2 will not be support, if u do that.
lettuce 不能使用,因为 此项目(redis-cluster-proxy)不支持 hello 指令,建议增加支持