Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] dubbo3 don't support zookeeper upper than 3.5.5; Curator5ZookeeperClient.createEphemeral() node fail when register consumer/provider cause zookeeper loss connection #14967

Open
4 tasks done
sfmichaelTech opened this issue Dec 6, 2024 · 3 comments
Labels
component/need-triage Need maintainers to triage type/need-triage Need maintainers to triage

Comments

@sfmichaelTech
Copy link

Pre-check

  • I am sure that all the content I provide is in English.

Search before asking

  • I had searched in the issues and found no similar issues.

Apache Dubbo Component

Java SDK (apache/dubbo)

Dubbo Version

DUBBO java 3.2.12, dubbo-zookeeper-curator5-spring-boot-starter 3.2.12 ; springboot 2.6.1; jdk17; zookeeper: 3.9.2

Steps to reproduce this issue

In the Spring Boot 2.6.1 environment, Dubbo 3.2.12 version is introduced, and Dubbo is integrated into the Spring Boot service through dubbo-spring-boot-starter 3.2.12 and dubbo-dependencies-zookeeper 3.2.12. Since JDK 17 does not support ZooKeeper version 3.4, ZooKeeper is separately introduced to version 3.9.2. Then, when registering Dubbo producers and consumers through zk, Curator5ZookeeperClient/CuratorZookeeperClient will create temporary nodes for producers/consumers through the public void createEphemeral(String path, boolean faultTolerant) method, at which point an error occurs indicating that ZooKeeper has disconnected.

What you expected to happen

dubbo-zookeeper-curator5-spring-boot-starter 3.2.12 or dubbo-dependencies-zookeeper 3.2.12 does not provide compatibility for higher versions of ZooKeeper (beyond 3.5.5), because I am able to connect to the zk cluster and create ephemeral nodes using a newly created Zookeeper client.

Anything else

No response

Are you willing to submit a pull request to fix on your own?

  • Yes I am willing to submit a pull request on my own!

Code of Conduct

@sfmichaelTech sfmichaelTech added component/need-triage Need maintainers to triage type/need-triage Need maintainers to triage labels Dec 6, 2024
@AlbumenJ
Copy link
Member

AlbumenJ commented Dec 6, 2024

If you use zk upper than 3.4.x, it would be better to use dubbo-dependencies-zookeeper-curator5

@sfmichaelTech
Copy link
Author

I have tried, if using dubbo-dependencies-zookeeper 3.2.12 and zookeeper 3.5.1-alpha, consumers can be successfully registered through CuratorZookeeperClient.createEphemeral(String path, boolean faultTolerant). However, if switched to dubbo-dependencies-zookeeper-curator5 3.2.12, when the zookeeper version exceeds 3.5.5, an error occurs during service registration with Curator5ZookeeperClient.createEphemeral(String path, boolean faultTolerant), resulting in KeeperErrorCode = NoNode for /dubbo/**.

@AlbumenJ
Copy link
Member

I have tried, if using dubbo-dependencies-zookeeper 3.2.12 and zookeeper 3.5.1-alpha, consumers can be successfully registered through CuratorZookeeperClient.createEphemeral(String path, boolean faultTolerant). However, if switched to dubbo-dependencies-zookeeper-curator5 3.2.12, when the zookeeper version exceeds 3.5.5, an error occurs during service registration with Curator5ZookeeperClient.createEphemeral(String path, boolean faultTolerant), resulting in KeeperErrorCode = NoNode for /dubbo/**.

Can you pls provide the detail message?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/need-triage Need maintainers to triage type/need-triage Need maintainers to triage
Projects
Status: Todo
Development

No branches or pull requests

2 participants