- [x] I have searched the [issues](https://github.com/apache/dubbo/issues) of 
this repository and believe that this is not a duplicate.
- [ ] I have checked the 
[FAQ](https://github.com/apache/dubbo/blob/master/FAQ.md) of this repository 
and believe that this is not a duplicate.

### Environment

* Dubbo version: 2.6.X
* Operating System version: linux
* Java version: 1.8

### Steps to reproduce this issue

1.修改zookeeper源码,在 SessionTrackerImpl 的 设置session过期状态 与 清理session临时节点 
代码中增加30s延迟,以模拟网络波动导致标记session过期与清理临时节点不同步的情况。以源码的方式启动zookeeper。
2.修改CuratorZookeeperClient,设置session过期时间为 5s 
,并在createEphemeral中增加日志打印,当抛出NodeExistsException时,输出EphemeralOwner与当前的sessionId
3.启动provider,并确保provider的临时节点已注册到zookeeper中。
4.断开provider与zookeeper的网络连接,等待5s session过期后,恢复网络连接。

### Expected Result

EphemeralOwner 与 sessionId 未被输出,或输出的 EphemeralOwner 与 sessionId 
相同。等待一段时间后,provider的注册信息在zookeeper中仍然存在。

### Actual Result

可以观察到日志打印的 EphemeralOwner 与 sessionId 
不同,等待一段时间后,provider的注册信息被删除,且不再恢复。此时consumer调用时无法找到此provider。



[ Full content available at: https://github.com/apache/dubbo/issues/5125 ]
This message was relayed via gitbox.apache.org for 
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to