lhotari commented on code in PR #24423:
URL: https://github.com/apache/pulsar/pull/24423#discussion_r2372902528


##########
pulsar-broker-common/src/main/java/org/apache/pulsar/broker/ServiceConfiguration.java:
##########
@@ -919,6 +919,56 @@ The max allowed delay for delayed delivery (in 
milliseconds). If the broker rece
     )
     private int brokerMaxConnections = 0;
 
+    @FieldContext(
+        category = CATEGORY_POLICIES,
+        doc = "It relates to configuration \"WriteBufferHighWaterMark\" of 
Netty Channel Config. If the number of bytes"
+            + " queued in the write buffer exceeds this value, channel 
writable state will start to return \"false\"."
+    )
+    private int pulsarChannelWriteBufferHighWaterMark = 64 * 1024;
+
+    @FieldContext(
+        category = CATEGORY_POLICIES,
+        doc = "It relates to configuration \"WriteBufferLowWaterMark\" of 
Netty Channel Config. If the number of bytes"
+                + " queued in the write buffer is smaller than this value, 
channel writable state will start to return"
+                + " \"true\"."
+    )
+    private int pulsarChannelWriteBufferLowWaterMark = 32 * 1024;
+
+    @FieldContext(
+        category = CATEGORY_POLICIES,
+        doc = "If enabled, the channel will pause to deal with new request 
once the writer buffer is full, until it"
+                + " is changed to writable."

Review Comment:
   "the channel will pause" isn't accurate. It's better to be more specific 
about this. "the broker will pause reading from the channel" etc.
   
   Passing this feedback with relevant context to LLM could help come up with 
more clear definitions for these configuration options.



##########
pulsar-broker-common/src/main/java/org/apache/pulsar/broker/ServiceConfiguration.java:
##########
@@ -919,6 +919,56 @@ The max allowed delay for delayed delivery (in 
milliseconds). If the broker rece
     )
     private int brokerMaxConnections = 0;
 
+    @FieldContext(
+        category = CATEGORY_POLICIES,
+        doc = "It relates to configuration \"WriteBufferHighWaterMark\" of 
Netty Channel Config. If the number of bytes"
+            + " queued in the write buffer exceeds this value, channel 
writable state will start to return \"false\"."
+    )
+    private int pulsarChannelWriteBufferHighWaterMark = 64 * 1024;
+
+    @FieldContext(
+        category = CATEGORY_POLICIES,
+        doc = "It relates to configuration \"WriteBufferLowWaterMark\" of 
Netty Channel Config. If the number of bytes"
+                + " queued in the write buffer is smaller than this value, 
channel writable state will start to return"
+                + " \"true\"."
+    )
+    private int pulsarChannelWriteBufferLowWaterMark = 32 * 1024;
+
+    @FieldContext(
+        category = CATEGORY_POLICIES,
+        doc = "If enabled, the channel will pause to deal with new request 
once the writer buffer is full, until it"
+                + " is changed to writable."
+    )
+    private boolean pulsarChannelPauseReceivingRequestsIfUnwritable = false;
+
+    @FieldContext(
+            category = CATEGORY_POLICIES,
+            doc = "After the connection is recovered from an unreadable state, 
the channel will be rate-limited for a"
+                + " of time window to avoid overwhelming due to the backlog of 
requests. This parameter defines how"
+                + " long the rate limiting should last, in seconds. Once the 
bytes that are waiting to be sent out"
+                + " reach the \"pulsarChannelWriteBufferHighWaterMark\", the 
timer will be reset. Setting a negative"
+                + " value will disable the rate limiting."
+    )
+    private int pulsarChannelUnReadableCooldownSeconds = 5;
+
+    @FieldContext(
+        category = CATEGORY_POLICIES,
+        doc = "After the connection is recovered from an unreadable state, the 
channel will be rate-limited for a"
+            + " period of time to avoid overwhelming due to the backlog of 
requests. This parameter defines how"
+            + " many requests should be allowed in the rate limiting period."
+
+    )
+    private int pulsarChannelUnReadableCooldownLimitRate = 5;
+
+    @FieldContext(
+        category = CATEGORY_POLICIES,
+        doc = "After the connection is recovered from an unreadable state, the 
channel will be rate-limited for a"
+            + " period of time to avoid overwhelming due to the backlog of 
requests. This parameter defines the"
+            + " period in milliseconds."
+
+    )
+    private int pulsarChannelUnReadableCooldownRateLimitPeriod = 10;

Review Comment:
   there's now multiple concepts for the same concept. "pause receiving" is 
called "unreadable" and there's "CooldownLimitRate" and 
"CooldownRateLimitPeriod". Would it be possible to make the concepts more 
aligned? 
   
   The documentation there is says "after the connection is recovered from an 
unreadable state" is confusing. It's better to keep the concepts around "pause 
receiving", since that's being referenced before.
   
   
   



-- 
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: commits-unsubscr...@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to