Timothée Maret created SLING-9078:
-------------------------------------

             Summary: Keep skipped offsets in memory
                 Key: SLING-9078
                 URL: https://issues.apache.org/jira/browse/SLING-9078
             Project: Sling
          Issue Type: Improvement
          Components: Content Distribution
    Affects Versions: Content Distribution Journal Core 0.1.8
            Reporter: Timothée Maret
             Fix For: Content Distribution Journal Core 0.1.10


In SLING-8908 we introduced a mechanism to keep track of skipped packages such 
that in case of journal availability flip flop, the agents would still 
progress. The implementation was done by persisting the offset in the 
repository. In environments where many skipped packages will occur (e.g. large 
customer with multiple agents) then those commits will start to generate a non 
negligible load on the repository, consuming resources and creating bottlenecks.

 

A first mitigation to this issue has been added in SLING-8965, however for very 
large customers the mitigation will not be effective. Increasing the grouping 
of skipped packages (e.g. 1/100 instead of 1/10) reduce the load on the 
repository but may fail to ensure progress in case of flip/flop.

 

Instead of storing the skipped packages in the repository, we should keep them 
in memory. A new service that does not reference the {{JournalAvailable}} 
service could be added. The offsets would be consolidated on demand from the 
stored offsets and those stored in memory. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to