[jira] [Comment Edited] (SLING-5284) use dedicate thread instead of scheduler
[ https://issues.apache.org/jira/browse/SLING-5284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14996864#comment-14996864 ] Stefan Egli edited comment on SLING-5284 at 11/9/15 5:34 PM: - implemented in rev 1713477 and rev 1713480 (version upping of discovery.base to 1.1.0) and 1713484 (version upping of discovery.oak to 1.1.0) was (Author: egli): implemented in rev 1713477 and rev 1713480 (version upping of discovery.base to 1.1.0) > use dedicate thread instead of scheduler > > > Key: SLING-5284 > URL: https://issues.apache.org/jira/browse/SLING-5284 > Project: Sling > Issue Type: Improvement > Components: Extensions >Affects Versions: Discovery Impl 1.2.0, Discovery Oak 1.0.2, Discovery > Base 1.0.2 >Reporter: Stefan Egli >Assignee: Stefan Egli > Fix For: Discovery Impl 1.2.2, Discovery Base 1.1.0, Discovery > Oak 1.0.4 > > > Currently discovery (base/oak/impl) use the sling scheduler for scheduling > the background jobs that periodically issue heartbeats, ping the topology > connectors and check if the view is current. It's very important that these > jobs run at the exact defined periods - delays of a few minutes can break > their usefullness and in the end cause an instability in the topology. Sling > scheduler uses a thread-pool which is by definition limited. And if, for some > reason, this pool is busy doing other stuff, then the job is not executed for > a certain amount of time. Consider the situation when all the jobs are busy > with other things (non discovery stuff) when discovery wants to store a > heartbeat or monitor the view - that's then not possible and gets delayed. If > the delay is big enough to let the heartbeats time out (or changes to get > unnoticed), then the topology can break. > Thus to avoid this, instead of relying on the size-bound-scheduler, use a > dedicated thread for these high priority tasks. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (SLING-5284) use dedicate thread instead of scheduler
[ https://issues.apache.org/jira/browse/SLING-5284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14996864#comment-14996864 ] Stefan Egli edited comment on SLING-5284 at 11/9/15 5:11 PM: - implemented in rev 1713477 and rev 1713480 (version upping of discovery.base to 1.1.0) was (Author: egli): implemented in rev 1713477 > use dedicate thread instead of scheduler > > > Key: SLING-5284 > URL: https://issues.apache.org/jira/browse/SLING-5284 > Project: Sling > Issue Type: Improvement > Components: Extensions >Affects Versions: Discovery Impl 1.2.0, Discovery Oak 1.0.2, Discovery > Base 1.0.2 >Reporter: Stefan Egli >Assignee: Stefan Egli > Fix For: Discovery Impl 1.2.2, Discovery Base 1.1.0, Discovery > Oak 1.0.4 > > > Currently discovery (base/oak/impl) use the sling scheduler for scheduling > the background jobs that periodically issue heartbeats, ping the topology > connectors and check if the view is current. It's very important that these > jobs run at the exact defined periods - delays of a few minutes can break > their usefullness and in the end cause an instability in the topology. Sling > scheduler uses a thread-pool which is by definition limited. And if, for some > reason, this pool is busy doing other stuff, then the job is not executed for > a certain amount of time. Consider the situation when all the jobs are busy > with other things (non discovery stuff) when discovery wants to store a > heartbeat or monitor the view - that's then not possible and gets delayed. If > the delay is big enough to let the heartbeats time out (or changes to get > unnoticed), then the topology can break. > Thus to avoid this, instead of relying on the size-bound-scheduler, use a > dedicated thread for these high priority tasks. -- This message was sent by Atlassian JIRA (v6.3.4#6332)