ivan-ciklum commented on code in PR #263:
URL: https://github.com/apache/pulsar-dotpulsar/pull/263#discussion_r2095726042


##########
src/DotPulsar/Internal/SubConsumer.cs:
##########
@@ -237,4 +237,18 @@ private async ValueTask 
InternalAcknowledge(IEnumerable<MessageId> messageIds, C
 
     public ValueTask<IEnumerable<MessageId>> 
GetLastMessageIds(CancellationToken cancellationToken = default) =>
         throw new NotImplementedException();
+
+    public async ValueTask NegativeAcknowledge(MessageId messageId, 
CancellationToken cancellationToken)
+    {
+        var command = new CommandRedeliverUnacknowledgedMessages();

Review Comment:
   Although RedeliverUnacknowledgedMessages already exists in IConsumer, the 
NegativeAcknowledge functionality brings a level of granularity that can be 
very useful in scenarios where we do not want to request redelivery of all 
pending messages, but only those that have failed on time.
   
   The NegativeAcknowledge method allows marking specific messages to be 
redelivered by the broker, also aligning with the official Apache Pulsar API 
and facilitating use cases where fine management of retries is important (for 
example, when some messages fail intermittently and we don't want to affect the 
rest of the backlog).
   
   In this way, we give more control to the user over error and retry 
management, avoiding global behaviors that may be unnecessary or inefficient in 
certain consumption contexts.
   
   What do you think about?



-- 
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