You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Richard S. Hall (JIRA)" <ji...@apache.org> on 2012/11/30 06:05:59 UTC
[jira] [Closed] (FELIX-3743) Potential endless loop setting the
active framework startlevel
[ https://issues.apache.org/jira/browse/FELIX-3743?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Richard S. Hall closed FELIX-3743.
----------------------------------
> Potential endless loop setting the active framework startlevel
> --------------------------------------------------------------
>
> Key: FELIX-3743
> URL: https://issues.apache.org/jira/browse/FELIX-3743
> Project: Felix
> Issue Type: Bug
> Components: Framework
> Affects Versions: framework-4.0.2
> Reporter: Felix Meschberger
> Assignee: Felix Meschberger
> Fix For: framework-4.2.0
>
>
> We experience an issue with setting the framework startlevel in the Felix.setActiveStartLevel(int, FrameworkListener[]) method.
> On line 1216 the bundle lock is acquired. If this fails with an IllegalStateException the loop just continues. But the bundle remains in the m_startLevelBundles set and is retried later. In the case of an uninstalled bundle, this situation will not change and the method is probabl going into an endless loop.
> Would it make sense to remove the bundle from the m_startLevelBundles set in the catch block starting line 1223 if the bundle has been uninstalled ?
> Proposed patch:
> Index: Felix.java
> ===================================================================
> --- Felix.java (revision 1404016)
> +++ Felix.java (working copy)
> @@ -1227,6 +1227,14 @@
> Logger.LOG_ERROR,
> "Error locking " + tuple.m_bundle._getLocation(), ex);
> }
> + else
> + {
> + synchronized (m_startLevelBundles)
> + {
> + m_startLevelBundles.remove(tuple);
> + bundlesRemaining = !m_startLevelBundles.isEmpty();
> + }
> + }
> continue;
> }
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira