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 8dd899f  Refine comment (#6)
8dd899f is described below

commit 8dd899f48a46493a31b90ba4c127edbb67e91b51
Author: Zhanhui Li <lizhan...@apache.org>
AuthorDate: Sat Oct 9 16:27:06 2021 +0800

    Refine comment (#6)
---
 apache/rocketmq/v1/service.proto | 39 +++++++++++++++++++++++++--------------
 1 file changed, 25 insertions(+), 14 deletions(-)

diff --git a/apache/rocketmq/v1/service.proto b/apache/rocketmq/v1/service.proto
index 54b4217..ce09da5 100644
--- a/apache/rocketmq/v1/service.proto
+++ b/apache/rocketmq/v1/service.proto
@@ -352,33 +352,44 @@ message NotifyClientTerminationResponse {
   reserved 2 to 64;
 }
 
-// For all the rpcs in MessagingService may return below erros:
+// For all the RPCs in MessagingService, the following error handling policies 
apply:
 //
-// If the request doesn't have a valid authentication credentials, returns 
`UNAUTHENTICATED`.
-// If the caller doesn't permission to execute the specified operation, 
returns `PERMISSION_DENIED`.
-// If the per-user rate quota has been exceeded, returns `RESOURCE_EXHAUSTED`.
-// If any unexpected server-side exception occurs, returns `INTERNAL`.
+// If the request doesn't bear a valid authentication credential, return a 
response with common.status.code == `UNAUTHENTICATED`.
+// If the authenticated user is not granted with sufficient permission to 
execute the requested operation, return a response with common.status.code == 
`PERMISSION_DENIED`.
+// If the per-user-resource-based quota is exhausted, return a response with 
common.status.code == `RESOURCE_EXHAUSTED`.
+// If any unexpected server-side errors raise, return a response with 
common.status.code == `INTERNAL`.
 service MessagingService {
 
-  // Querys the route info of a topic from specific endpoints, the server 
returns a set of partition if success.
+  // Querys the route entries of the requested topic in the perspective of the 
given endpoints.
+  // On success, servers should return a collection of addressable partitions. 
+  // Note servers may return customized route entries based on endpoints 
provided.
   //
-  // If the corresponding topic doesn't exist, returns `NOT_FOUND`.
+  // If the requested topic doesn't exist, returns `NOT_FOUND`.
   // If the specific endpoints is emtpy, returns `INVALID_ARGUMENT`.
   rpc QueryRoute(QueryRouteRequest) returns (QueryRouteResponse) {}
 
-  // Producer or consumer sends HeartbeatRequest to server in order to report 
necessary
-  // client-side information, like subscription data of consumer. Returns `OK` 
if success.
+  // Producer or consumer sends HeartbeatRequest to servers periodically to 
keep-alive. 
+  // Additionally, it also reports client-side configuration, including topic 
subscription, load-balancing group name, etc.
+  //
+  // Returns `OK` if success.
   //
-  // If the client language info is invalid, returns `INVALID_ARGUMENT`
+  // If a client specifies a language that is not yet supported by servers, 
returns `INVALID_ARGUMENT`
   rpc Heartbeat(HeartbeatRequest) returns (HeartbeatResponse) {}
 
-  // Checks the health status of message server, returns `OK` if no network 
issues.
-  // Clients could use this RPC to detect the availability of server, and 
adpot necessary isolation measures. 
+  // Checks the health status of message server, returns `OK` if services are 
online and serving.
+  // Clients may use this RPC to detect availability of messaging service, and 
take isolation actions when necessary. 
   rpc HealthCheck(HealthCheckRequest) returns (HealthCheckResponse) {}
 
-  // Sends one message to the specific partition of a topic, returns message 
id or transaction id with status `OK`.
+  // Delivers messages to brokers.
+  // Clients may further:
+  // 1. Refine a message destination to topic partition which fulfills parts 
of FIFO semantic;
+  // 2. Flag a message as transactional, which keeps it invisible to consumers 
until it commits;
+  // 3. Time a message, making it invisible to consumers till specified 
time-point;
+  // 4. And more...
+  //  
+  // Returns message-id or transaction-id with status `OK` on success.
   //
-  // If the corresponding topic doesn't exist, returns `NOT_FOUND`.
+  // If the destination topic doesn't exist, returns `NOT_FOUND`.
   rpc SendMessage(SendMessageRequest) returns (SendMessageResponse) {}
 
   // Querys the assigned partition route info of a topic for current consumer, 

Reply via email to