[
https://issues.apache.org/jira/browse/FELIX-6778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tom Watson updated FELIX-6778:
------------------------------
Affects Version/s: scr-2.2.14
> Reduce number of re-creation(s) of SCR Component Registry thread
> ----------------------------------------------------------------
>
> Key: FELIX-6778
> URL: https://issues.apache.org/jira/browse/FELIX-6778
> Project: Felix
> Issue Type: Improvement
> Components: Declarative Services (SCR)
> Affects Versions: scr-2.2.14
> Reporter: Arnoud Glimmerveen
> Priority: Major
>
> I noticed when assigning a low value to {{ds.service.changecount.timeout}}
> quite a lot of short-lived threads are created in quick succession during
> startup. I found that the current approach to cancelling a timer after
> successful update to the service.changecount property and the re-creating of
> the timer for a subsequent changecount update, especially during startup
> (when SCR is doing a lot of work) results in a quite lot of threads being
> created that are short-lived.
> I propose another approach that limits the threads being created. By using a
> ScheduledThreadPoolExecutor, the changecount update can still scheduled with
> its timeout, but the executor would be able to reuse the thread for
> subsequent updates. Also this executor can be configured to have the
> thread(s) be terminated after a period of time that no tasks are scheduled on
> the executor, thereby ensuring that there is no thread occupying resource(s)
> when there are no updates to the changecount.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)