[
https://issues.apache.org/jira/browse/SLING-10123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17299334#comment-17299334
]
Ashish Chopra commented on SLING-10123:
---------------------------------------
hi [~mohiaror]
bq. should we implement an ExponentialBackoff similar to [0]?
bq. If we want to use [0], would it make sense to extract it out into a common
bundle which both distribution-journal and distribution-core are importing?
I'm interested in knowing what would the caller of [0] be doing while [0] waits
for back-off time on an executor of its own. If the caller can only wait for it
to finish (via a blocking call, or a sleep), then using [0] (or something
equivalent) doesn't seem to make much sense to me.
[0] is only relevant when the caller can proceed to do something different and
return to transport once the back-off duration is over. I don't think the above
is applicable in the case this issue speaks of.
[0]
https://github.com/apache/sling-org-apache-sling-distribution-journal/blob/master/src/main/java/org/apache/sling/distribution/journal/shared/ExponentialBackOff.java
> Distribution agent queue processor should implement a backoff in case of
> retries for processing an item
> -------------------------------------------------------------------------------------------------------
>
> Key: SLING-10123
> URL: https://issues.apache.org/jira/browse/SLING-10123
> Project: Sling
> Issue Type: Bug
> Components: Content Distribution
> Affects Versions: Content Distribution Core 0.4.2
> Reporter: Mohit Arora
> Priority: Major
> Fix For: Content Distribution Core 0.4.6
>
>
> In case of recoverable exceptions, distribution agent queue processor does
> not evict the queue item from the processing queue [0]. Rather, the item is
> retried infinitely until either the distribution of the item is successful or
> a non-recoverable exception is thrown for the item. However, since there is
> "something wrong" because of which an exception is thrown in the first place,
> we should add a cool off period before trying to reattempt to distribute the
> same item. This can be achieved through a linear or exponential backoff.
> cc - [~ashishc]
> [0]
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/master/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentQueueProcessor.java#L147-L150
--
This message was sent by Atlassian Jira
(v8.3.4#803005)