[
https://issues.apache.org/jira/browse/FELIX-811?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Martin Thelian closed FELIX-811.
--------------------------------
I'm now using the new snapshot version for a few days in my environment and it
works fine. Thanks.
> MonitorAdmin - Unregistration of Monitorable causes IllegalArgumentException
> in MonitoringJob
> ---------------------------------------------------------------------------------------------
>
> Key: FELIX-811
> URL: https://issues.apache.org/jira/browse/FELIX-811
> Project: Felix
> Issue Type: Bug
> Components: Sandbox
> Reporter: Martin Thelian
> Assignee: Didier DONSEZ
> Attachments: FELIX-811.patch
>
>
> If a Monitorable service is unregistered from the framework but there is
> still a scheduled MonitorJob monitoring StatusVariables of the unregistered
> Monitorable, an IllegalArgumentException is thrown in the MonitoringJobImpl
> and the whole MonitoringJob thread dies.
> The stracktrace:
> ------------
> |> Exception in thread "Thread-24" java.lang.IllegalArgumentException: no
> such monitorable service for this pid
> |> at
> org.apache.felix.sandbox.monitor.MonitorAdminImpl$MonitorAdminProxy.getStatusVariable(MonitorAdminImpl.java:322)
> |> at
> org.apache.felix.sandbox.monitor.MonitorAdminImpl$MonitoringJobImpl$MyRunnable.run(MonitorAdminImpl.java:142)
> |> at java.lang.Thread.run(Thread.java:595)
> ------------
> The OSGi spec defines the following:
> "Whether a monitoring job keeps track dynamically of the StatusVariables it
> monitors is not specified. This means that if we monitor a StatusVariable
> of
> a Monitorable service which disappears and later reappears then it is
> imple-
> mentation specific whether we still receive updates of the StatusVariable
> changes or not."
> From my point of view the MonitoringJob should just ignore disappeared
> variables and should continue to monitor all other variables.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.