Alleninggx opened a new issue, #14131: URL: https://github.com/apache/dubbo/issues/14131
### Pre-check - [X] I am sure that all the content I provide is in English. ### Search before asking - [X] I had searched in the [issues](https://github.com/apache/dubbo/issues?q=is%3Aissue) and found no similar issues. ### Apache Dubbo Component Java SDK (apache/dubbo) ### Dubbo Version Dubbo java 3.2.5 Java 21 Spring Boot 3.2.3 Alibaba Spring Cloud 2023.0.0.0-RC1 Seata 2.0 Nacos ### Steps to reproduce this issue 我有一个triple协议的服务,提供了一个读文件的服务端流(详见最底的proto文件,read函数)。 I have a Triple protocol service, which provides a server stream for reading files (see the bottom Proto file for details, read function). 问题: Question: 服务启动时,访问此接口是正常的(能打印“bbb”),我命名这次为 Action-A。 但是不做操作过1~2个小时候后,调此接口,就没有再执行成功了(没有打印出“bbb”),我命名这次为 Action-B。 然后紧接着再调用此接口,又正常了,我命名这次为 Action-C。 When the service starts, the access to this interface is normal (it can print "BBB"), and I named this time Action-A. However, after 1 to 2 hours, the interface was adjusted, and it was not successfully executed (the "BBB" was not printed). I named it Action-B this time. Then call this interface immediately, it is normal, I named this time Action-C. ---------------- ```java @DubboService(protocol = "tri", retries = 1) // Has been tried to 0 or 1 @RequiredArgsConstructor public class ExcelFileResourceDubboGrpcImpl implements ExcelFileResourceDubboGrpc { @Override public void read(ReadRequest readRequest, StreamObserver<ReadResult> responseObserver) { System.err.println("bbb"); // Looking forward to printing "bbb", but not } } ``` ```proto syntax = "proto3"; option java_multiple_files = true; option java_package = "com.xxxxxxxxxxx.protobuf.ExcelFileResource"; package proto.ExcelFileResource; service ExcelFileResourceDubboGrpc { // 读取 rpc read(ReadRequest) returns (stream ReadResult) {} // 写出 rpc write(stream WriteRequest) returns (stream WriteResult){} } // ----------------- 读取 ----------------- message ReadRequest { string key = 1; // 唯一标识 bool stopWhenError = 2; // 遇到异常是否停止 } message ReadResult { ReadStatus status = 1; // 状态 string message = 2; // 消息 int32 rowIndex = 3; // 行号 repeated ReadCol col = 4; // 列数据 repeated ReadHead head = 5; // 头数据,每一行都会携带 } message ReadHead { int32 index = 1; // 列号 string name = 2; // 列名 optional string groupName = 3; // 分组名 } message ReadCol { int32 index = 1; // 列号 string name = 2; // 列名 string value = 3; // 值 } enum ReadStatus { RS_SUCCESS = 0; // 读成功 RS_ERROR = 1; // 读失败 } // ----------------- 写出 ----------------- message WriteRequest { string orgId = 1; // 机构ID string service = 2; // 服务名 string excelKey = 3; // 唯一标识 string excelName = 4; // 文件名 string sheetName = 5; // 表名 repeated WriteHead head = 6; // 头数据 repeated WriteRow row = 7; // 行数据 } message WriteHead { repeated string head = 1; // 头数据 } message WriteRow { repeated string col = 1; // 行数据 } message WriteResult { WriteStatus status = 1; // 状态 optional string message = 2; // 消息 } enum WriteStatus { WS_CONTINUE = 0; // 继续 WS_SUCCESS = 1; // 写成功 WS_ERROR = 2; // 写失败 } ``` ### What you expected to happen 期初我以为是dubbo有关于“长时间空闲”的策略,但是我没找到相关信息。 At first I thought dubbo had a "long idle" policy, but I couldn't find that information. 然后我尝试增加重试次数,但意外的是,它并不像是“失败”,而是“无响应”,并没触发重试。 I then tried to increase the number of retries, but to my surprise, it didn't look like "failed", it looked like "no response" and didn't trigger a retry. ### 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 - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) -- 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]
