Github user hmcl commented on a diff in the pull request:
    --- Diff: 
    @@ -330,11 +328,9 @@ public void ack(Object messageId) {
         public void fail(Object messageId) {
             final KafkaSpoutMessageId msgId = (KafkaSpoutMessageId) messageId;
    -        if (msgId.numFails() < maxRetries) {
    -            msgId.incrementNumFails();
    -            retryService.schedule(msgId);
    -        } else { // limit to max number of retries
    -            LOG.debug("Reached maximum number of retries. Message [{}] 
being marked as acked.", msgId);
    +        msgId.incrementNumFails();
    +        if (!retryService.schedule(msgId)) {
    +            LOG.debug("Retry service indicated message should not be 
retried. Message [{}] being marked as acked.", msgId);
    --- End diff --
    @srdo I am not sure I completely follow your reasoning. The most meaningful 
piece of information that we want to show to the user here is that if the max 
number of retries has been reached, no more retries happen. If the user reads a 
message saying that the retry service marked it not to be retried, he still 
does not know the cause.
    Looking at the code, the `boolean schedule(msgId)` only returns false only 
if the max number of retries has been reached.
    Although the retry service log messages hints ant the max retries cap being 
reached, the user will have to have both logs enabled to have both spouts. I 
favor the message as it was before, as it is straight to the point and provides 
good insight on what is happening.

If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at or file a JIRA ticket
with INFRA.

Reply via email to