Remove RetriableStream flush workaround
- Ngôn ngữ chính
- Java
- Star
- 12.1k
- Fork
- 4k
- Merge trung bình
- 2 ngày 17 giờ
- Pull request đã merge (30 ngày)
- 37
Mô tả
In https://github.com/grpc/grpc-java/pull/9360 I added this workaround:
https://github.com/grpc/grpc-java/blob/7c73baa450c87e6a6f767d7451c46ca256e5158a/core/src/main/java/io/grpc/internal/RetriableStream.java#L565-L568
A flush() must always follow a write (but other flushes and calls could be in-between). I tried to flush everywhere but it didn't work at the time. See also #9340. It is possible there were interactions with https://github.com/grpc/grpc-java/issues/9547 which prevented it from working and just trying again may work.
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu trong core/src/main/java/io/grpc/internal/RetriableStream.java, tại workaround xung quanh các dòng 565-568. Đọc ngữ cảnh của #9340 và #9547, sau đó xác định liệu hiện tại có thể loại bỏ workaround hay không mà vẫn duy trì yêu cầu mọi write đều phải được theo sau bởi một flush. Hoàn thành có nghĩa là workaround được loại bỏ và hành vi flush sau đó vẫn chính xác.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- java
- Lĩnh vực
- api
- Loại issue
- Tái cấu trúc
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100