This is an automated email from the ASF dual-hosted git repository.

lizhanhui pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/rocketmq-apis.git


The following commit(s) were added to refs/heads/main by this push:
     new 33c34f1  Add ChangeInvisibleTime RPC (#12)
33c34f1 is described below

commit 33c34f1f5f495026fdf6fe4ca9b4dc8825ec3e45
Author: Zhanhui Li <[email protected]>
AuthorDate: Wed Mar 9 15:23:52 2022 +0800

    Add ChangeInvisibleTime RPC (#12)
---
 apache/rocketmq/v1/service.proto | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/apache/rocketmq/v1/service.proto b/apache/rocketmq/v1/service.proto
index bc0791e..ee9a4ed 100644
--- a/apache/rocketmq/v1/service.proto
+++ b/apache/rocketmq/v1/service.proto
@@ -373,6 +373,27 @@ message NotifyClientTerminationResponse {
   reserved 2 to 64;
 }
 
+message ChangeInvisibleTimeRequest {
+  Resource group = 1;
+  Resource topic = 2;
+
+  // Unique receipt handle to identify message to change
+  string receipt_handle = 3;
+
+  // New invisible duration
+  google.protobuf.Duration invisible_duration = 4;
+  reserved 5 to 64;
+}
+
+message ChangeInvisibleTimeResponse {
+  ResponseCommon common = 1;
+
+  // Server may generate a new receipt handle for the message.
+  string receipt_handle = 2;
+
+  reserved 3 to 64;
+}
+
 // For all the RPCs in MessagingService, the following error handling policies
 // apply:
 //
@@ -518,4 +539,13 @@ service MessagingService {
   // Notify the server that the client is terminated.
   rpc NotifyClientTermination(NotifyClientTerminationRequest)
       returns (NotifyClientTerminationResponse) {}
+
+  // Once a message is retrieved from consume queue on behalf of the group, it
+  // will be kept invisible to other clients of the same group for a period of
+  // time. The message is supposed to be processed within the invisible
+  // duration. If the client, which is in charge of the invisible message, is
+  // not capable of processing the message timely, it may use
+  // ChangeInvisibleTime to lengthen invisible duration.
+  rpc ChangeInvisibleTime(ChangeInvisibleTimeRequest)
+      returns (ChangeInvisibleTimeResponse) {}
 }
\ No newline at end of file

Reply via email to