Skip to content

Commit 3d94585

Browse files
authored
fix (#9516) Return origin handle to consumer when changeInvisibleDuration encounters flow limit
Return origin handle to consumer when changeInvisibleDuration encounters flow limit
1 parent 0f6b427 commit 3d94585

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

proxy/src/main/java/org/apache/rocketmq/proxy/grpc/v2/GrpcMessagingApplication.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -358,7 +358,14 @@ public void notifyClientTermination(NotifyClientTerminationRequest request,
358358
@Override
359359
public void changeInvisibleDuration(ChangeInvisibleDurationRequest request,
360360
StreamObserver<ChangeInvisibleDurationResponse> responseObserver) {
361-
Function<Status, ChangeInvisibleDurationResponse> statusResponseCreator = status -> ChangeInvisibleDurationResponse.newBuilder().setStatus(status).build();
361+
Function<Status, ChangeInvisibleDurationResponse> statusResponseCreator = status -> {
362+
ChangeInvisibleDurationResponse.Builder builder =
363+
ChangeInvisibleDurationResponse.newBuilder().setStatus(status);
364+
if (Code.TOO_MANY_REQUESTS.equals(status.getCode())) {
365+
builder.setReceiptHandle(request.getReceiptHandle());
366+
}
367+
return builder.build();
368+
};
362369
ProxyContext context = createContext();
363370
try {
364371
this.addExecutor(this.consumerThreadPoolExecutor,

0 commit comments

Comments
 (0)