apache / apache/dubbo

2.6.2客户端不能解析3.2.0的response(Unknown result flag, expect '0' '1' '2', get 4)

Open
#12,154 9 comments 0 reactions 0 assignees View on GitHub
type/proposal
Dominant language
Java
Stars
41.6k
Forks
26.4k
Avg merge
15h 13m
Merged PRs (30d)
4

Description

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

## My question
搜索了以前的issue,存在过相同的问题,修复方式是在 `Version` 类中对 `release版本号` 做兼容,`2.6.3` 是个分界版本;在 `3.2.0` 的源码中, `protocol版本号` 在 [2.0.2, 2.0.99] 范围内,response类型就会赋值为 4 ,而在 `2.6.2` 之前的客户端只能处理 0、1、2的值,出现异常:Unknown result flag, expect '0' '1' '2', get 4。
如果我要升级服务端,客户端也至少要升级到2.6.3的版本,才可以兼容,但公司内又有基于2.6.2的内部版本,存在升级困难。

## Describe the proposal

在我的debug中(客户端2.6.2,server端3.2.0),server端对response encode时,version值是协议版本号 `2.0.2`
有没有可能:在以后的实现中response的类型基于客户端的版本返回

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.