Akashisang opened a new issue, #3074: URL: https://github.com/apache/dubbo-go/issues/3074
### ✅ 验证清单 - [x] 🔍 我已经搜索过 [现有 Issues](https://github.com/apache/dubbo-go/issues),确信这不是重复请求 - [x] 📋 我已经查看了 [发布说明](https://github.com/apache/dubbo-go/releases),确信此功能尚未实现 ### 🎯 功能描述 目前 `registry/zookeeper/listener.go` 的 `RegistryDataListener.DataChange` 只在 interface=`*` 时才会触发 `common.IsAnyCondition`,导致消费者无法在指定接口的情况下使用 group/version 的 `*` 匹配,这与 Java Dubbo `UrlUtils.isMatch` 的行为不一致。希望 `RegistryDataListener.DataChange` 的匹配策略与 Java Dubbo `UrlUtils.isMatch` 对齐。当消费者在引用配置中指定了具体 interface 时,也能对 group/version 使用 `*` 或多值匹配,而不是必须把 interface 也改成 `*` 才能生效。 ### 📋 使用场景 在当前逻辑下 1. Provider 注册 `group=g1`, `version=v1`, interface=`com.foo.BarService`. 2. Consumer 订阅 `interface=com.foo.BarService`, `group=*`, `version=*`. 3. 消费者无法接收到 provider 变更;若把 interface 改为 `*`,才可收到。 修改后,即使 interface 精确指定,也能允许 group/version 使用 `*`,对齐 Java 版的匹配逻辑。 ### ⚖️ 复杂性与风险评估 _No response_ ### 🔗 外部依赖 _No response_ ### 📚 附加信息 _No response_ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
