[ 
https://issues.apache.org/jira/browse/SLING-3278?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13855715#comment-13855715
 ] 

Carsten Ziegeler commented on SLING-3278:
-----------------------------------------

Thanks again Georg for your updated patch - I've committed a modified version 
in rev 1553133 in order to make going forward much easier. I left out the async 
stuff, used different names/signatures for the executor service and also did 
some minor code clean ups/changes.

Now, let's discuss the things - as a first step I think we should focus on the 
API
1) I renamed the runXX methods to execute - as the service is named Executor 
and changed the result to Collection<HealthCheckResult>
2) I totally agree, that there is rarely the use to call this executor from 
within own code, so jmx and web console are the number one clients for this. 
Therefore I think we can go with an OSGi free interface and directly use the 
service. The JMX code already has the service anyways and doing it once in the 
web console code is not too hard either. So we don't make it harder for users 
as they don't use this anyway :)
3) I removed the async execution for now. As Bertrand suggested, let's discuss 
this on the list separately from this and keep the focus on the executor service
4) I think the HealthCheckResult interface is fine for now; we might need to 
tweak it a little bit before we close this issue

> Provide a HealthCheckExecutor service
> -------------------------------------
>
>                 Key: SLING-3278
>                 URL: https://issues.apache.org/jira/browse/SLING-3278
>             Project: Sling
>          Issue Type: New Feature
>          Components: Health Check
>            Reporter: Georg Henzler
>            Assignee: Carsten Ziegeler
>         Attachments: SLING-3278-bertrand.patch, 
> SLING-3278-hc.core-HealthCheckExecutorService-2013-12-19.patch, 
> SLING-3278-hc.core-HealthCheckExecutorService-2013-12-21-withExecutorResult.patch,
>  SLING-3278-hc.webconsole-2013-12-19.patch, 
> SLING-3278-hc.webconsole-2013-12-21.patch, hc-it.patch
>
>
> Goals:
> * Be able to get an overall (aggregated) result as quickly as possible 
> (ideally <2sec)
> * Whenever possible, return most current results (e.g. for a memory check)
> * Provide a declarative way for async checks (async checks should be the 
> exception though) 
> Approach
> * Run checks in parallel
> * Make sure long running (or even stuck) checks are timed out
> * If a health check must run asynchronously (because its execution time 
> cannot be optimized), it should be enough to just specify a service property 
> (e.g. "hc.async").
> See also
> http://apache-sling.73963.n3.nabble.com/Health-Check-Improvements-td4029330.html#a4029402
> http://apache-sling.73963.n3.nabble.com/Health-checks-execution-service-td4028477.html



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to