[jira] Created: (FELIX-964) Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included)
Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included) - Key: FELIX-964 URL: https://issues.apache.org/jira/browse/FELIX-964 Project: Felix Issue Type: Improvement Components: Documentation Reporter: Filippo Diotalevi Priority: Minor Attachments: ManagedServiceFactoryAddenda.txt Section to add to http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Configuration+Admin+Service just after the ManagedService section. The section explains how to use ManagedServiceFactory. (I don't have much experience with Confluence syntax, hope it works fine) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Updated: (FELIX-964) Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included)
[ https://issues.apache.org/jira/browse/FELIX-964?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Filippo Diotalevi updated FELIX-964: Attachment: ManagedServiceFactoryAddenda.txt Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included) - Key: FELIX-964 URL: https://issues.apache.org/jira/browse/FELIX-964 Project: Felix Issue Type: Improvement Components: Documentation Reporter: Filippo Diotalevi Priority: Minor Attachments: ManagedServiceFactoryAddenda.txt Section to add to http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Configuration+Admin+Service just after the ManagedService section. The section explains how to use ManagedServiceFactory. (I don't have much experience with Confluence syntax, hope it works fine) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Assigned: (FELIX-964) Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included)
[ https://issues.apache.org/jira/browse/FELIX-964?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Felix Meschberger reassigned FELIX-964: --- Assignee: Felix Meschberger Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included) - Key: FELIX-964 URL: https://issues.apache.org/jira/browse/FELIX-964 Project: Felix Issue Type: Improvement Components: Documentation Reporter: Filippo Diotalevi Assignee: Felix Meschberger Priority: Minor Attachments: ManagedServiceFactoryAddenda.txt Section to add to http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Configuration+Admin+Service just after the ManagedService section. The section explains how to use ManagedServiceFactory. (I don't have much experience with Confluence syntax, hope it works fine) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Resolved: (FELIX-964) Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included)
[ https://issues.apache.org/jira/browse/FELIX-964?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Felix Meschberger resolved FELIX-964. - Resolution: Fixed Thanks for supplying this patch. Please close this issue, if this satisifes your needs. Thanks. Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included) - Key: FELIX-964 URL: https://issues.apache.org/jira/browse/FELIX-964 Project: Felix Issue Type: Improvement Components: Documentation Reporter: Filippo Diotalevi Assignee: Felix Meschberger Priority: Minor Attachments: ManagedServiceFactoryAddenda.txt Section to add to http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Configuration+Admin+Service just after the ManagedService section. The section explains how to use ManagedServiceFactory. (I don't have much experience with Confluence syntax, hope it works fine) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[VOTE] release maven-bundle-plugin 2.0.0
Hi folks, I'd like to start a vote for the 2.0.0 release of the maven-bundle-plugin. This release primarily contains a major update of the Bnd tool, which now requires you to build with a Java5 JDK. It also contains a number of improvements requested by the community to improve usability. [ note you can still compile for earlier JVMs by using the appropriate source and target levels in the maven-compiler-plugin configuration ] Release 2.0.0 of the maven-bundle-plugin fixes the following issues: FELIX-807,FELIX-782,FELIX-660,FELIX-549,FELIX-546,FELIX-545, FELIX-831,FELIX-677 All fixed by updating to use the latest version of the Bnd Tool (0.0.311) FELIX-941: store the generated default symbolicname in $(maven-symbolicname) property FELIX-912: set default Export-Package based on local source files FELIX-684: support filters in excludeDependencies, such as *;scope=runtime FELIX-806: pickup archive settings and enable support of addMavenDescriptor setting FELIX-850: local fix for MSHARED-86 (should use isFile instead of exists) FELIX-899: widen dependency resolution and pass everything except test dependencies onto BND FELIX-760: commit latest bindex code (based on r95 from the OSGi subversion repository) FELIX-699: set analyzer base before loading properties in manifest goal [ plus additional debug to help with problem determination ] I've built and signed the release candidate and made it available here: http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/ You can also find the KEYS for verifying the signature in this directory. To use the staging area as a plugin repository, add this to your POM: pluginRepositories pluginRepository idbundleplugin.staging/id urlhttp://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/url /pluginRepository /pluginRepositories Please check this release and cast your votes - the vote will be open until Wednesday 4th March to give people time to test the new plugin (and also because I'm starting this vote on a Friday). [ ] +1 Yes, release it now [ ] -1 No, don't release now (please provide specific comments) -- Cheers, Stuart
Re: [VOTE] release maven-bundle-plugin 2.0.0
+1 (not binding) On Fri, Feb 27, 2009 at 11:01 AM, Stuart McCulloch mccu...@gmail.com wrote: Hi folks, I'd like to start a vote for the 2.0.0 release of the maven-bundle-plugin. This release primarily contains a major update of the Bnd tool, which now requires you to build with a Java5 JDK. It also contains a number of improvements requested by the community to improve usability. [ note you can still compile for earlier JVMs by using the appropriate source and target levels in the maven-compiler-plugin configuration ] Release 2.0.0 of the maven-bundle-plugin fixes the following issues: FELIX-807,FELIX-782,FELIX-660,FELIX-549,FELIX-546,FELIX-545, FELIX-831,FELIX-677 All fixed by updating to use the latest version of the Bnd Tool (0.0.311) FELIX-941: store the generated default symbolicname in $(maven-symbolicname) property FELIX-912: set default Export-Package based on local source files FELIX-684: support filters in excludeDependencies, such as *;scope=runtime FELIX-806: pickup archive settings and enable support of addMavenDescriptor setting FELIX-850: local fix for MSHARED-86 (should use isFile instead of exists) FELIX-899: widen dependency resolution and pass everything except test dependencies onto BND FELIX-760: commit latest bindex code (based on r95 from the OSGi subversion repository) FELIX-699: set analyzer base before loading properties in manifest goal [ plus additional debug to help with problem determination ] I've built and signed the release candidate and made it available here: http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/ You can also find the KEYS for verifying the signature in this directory. To use the staging area as a plugin repository, add this to your POM: pluginRepositories pluginRepository idbundleplugin.staging/id urlhttp://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/url /pluginRepository /pluginRepositories Please check this release and cast your votes - the vote will be open until Wednesday 4th March to give people time to test the new plugin (and also because I'm starting this vote on a Friday). [ ] +1 Yes, release it now [ ] -1 No, don't release now (please provide specific comments) -- Cheers, Stuart - To unsubscribe, e-mail: users-unsubscr...@felix.apache.org For additional commands, e-mail: users-h...@felix.apache.org -- Alin Dreghiciu http://www.ops4j.org - New Energy for OSS Communities - Open Participation Software. http://www.qi4j.org - New Energy for Java - Domain Driven Development. http://www.codedragons.com - New Energy for Projects - Great People working on Great Projects at Great Places Sent from: Huissen Ge Netherlands.
Re: Why was shell.remote version 1.0.4 not released?
Thank you very much. Sahoo Felix Meschberger wrote: Hi Sahoo, Finally, finally, I could release the shell.remote bundle 1.0.4 version. It may take some time to fully synchronize and mirror. Sorry again, for the delay... Regards Felix Sahoo schrieb: The release candidate was put for vote in early Feb, but not many have voted. Is the release postponed? I am looking forward to the fixes made in that release. Thanks, Sahoo
[jira] Closed: (FELIX-964) Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included)
[ https://issues.apache.org/jira/browse/FELIX-964?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Filippo Diotalevi closed FELIX-964. --- Apache Felix Configuration Admin Service wiki page improvement - ManagedServiceFactory (patch included) - Key: FELIX-964 URL: https://issues.apache.org/jira/browse/FELIX-964 Project: Felix Issue Type: Improvement Components: Documentation Reporter: Filippo Diotalevi Assignee: Felix Meschberger Priority: Minor Attachments: ManagedServiceFactoryAddenda.txt Section to add to http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Configuration+Admin+Service just after the ManagedService section. The section explains how to use ManagedServiceFactory. (I don't have much experience with Confluence syntax, hope it works fine) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (FELIX-733) Exception when uninstalling a bundle that contains a native library (and loaded it at bundle startup).
[ https://issues.apache.org/jira/browse/FELIX-733?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12677364#action_12677364 ] Vincent ASTRUC commented on FELIX-733: -- I have the same problem, i use felix 1.4.1 In the memory profiler all objects enum stay in the memory. Exception when uninstalling a bundle that contains a native library (and loaded it at bundle startup). -- Key: FELIX-733 URL: https://issues.apache.org/jira/browse/FELIX-733 Project: Felix Issue Type: Improvement Components: Framework Environment: WinXP, eclipse, sun jdk 1.5 or 1.6 Reporter: Sylvain MARIE Assignee: Karl Pauls Priority: Minor Attachments: native.patch, native2.patch Original Estimate: 1h Remaining Estimate: 1h Here is a short description of the problem and how I managed to fix it. Don't hesitate to contact me for details or to tell me if something here is wrong ! Cheers. Sylvain. 1- bundle foo embeds a native library lib.dll and declares it in its manifest, with appropriate platform declaration (os, version, processor). 2- foo's activator loads that library in the start(bc) method - with System.loadLibrary(...). 3- the library loads succesfully (this can be checked with e.g. processExplorer or pmap) 4- the bundle is stopped. 5- the bundle is uninstalled. ERROR: org.apache.felix.framework.cache.BundleArchive: Unable to delete archive directory Why does this happen : - step 4: the library is not unloaded because foo's contentclassloader is still alive. This is normal. - step 5: automatic package refresh : all bundles from uninstalled list are garbaged. Method Felix.garbageCollectBundle attemps to remove the bundle archive from the cache, but the dll file is still in use = ERROR. The dll is still in use because foo's contentclassloader has not yet been garbaged out. How to fix this: We need the ContentClassLoader to be garbaged out. So first release all references to foo's activator, then release all references to the ContentClassLoader itself, and finally do a System.gc() before attempting to remove the bundle from the cache. Two methods are impacted: ContentLoaderImpl.close() and Felix.garbageCollectBundle(...) ContentLoaderImpl.java --- public synchronized void close() { ... ... // FIX SMA : release content class loader m_classLoader = null; } Felix.java - private void garbageCollectBundle(FelixBundle bundle) throws Exception { // FIX SMA : release reference to the activator bundle.getInfo().setActivator(null); // Do the garbage collection either systematically, or only if native libraries were loaded, or ... System.gc(); // this destroys the activator, the contentclassloader, and unloads the dll. // end FIX SMA // Remove the bundle from the cache. m_cache.remove(m_cache.getArchive(bundle.getBundleId())); } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
Re: [VOTE] release maven-bundle-plugin 2.0.0
Cross posting a vote to three mailing lists? This doesn't seem like a good idea. - richard Stuart McCulloch wrote: Hi folks, I'd like to start a vote for the 2.0.0 release of the maven-bundle-plugin. This release primarily contains a major update of the Bnd tool, which now requires you to build with a Java5 JDK. It also contains a number of improvements requested by the community to improve usability. [ note you can still compile for earlier JVMs by using the appropriate source and target levels in the maven-compiler-plugin configuration ] Release 2.0.0 of the maven-bundle-plugin fixes the following issues: FELIX-807,FELIX-782,FELIX-660,FELIX-549,FELIX-546,FELIX-545, FELIX-831,FELIX-677 All fixed by updating to use the latest version of the Bnd Tool (0.0.311) FELIX-941: store the generated default symbolicname in $(maven-symbolicname) property FELIX-912: set default Export-Package based on local source files FELIX-684: support filters in excludeDependencies, such as *;scope=runtime FELIX-806: pickup archive settings and enable support of addMavenDescriptor setting FELIX-850: local fix for MSHARED-86 (should use isFile instead of exists) FELIX-899: widen dependency resolution and pass everything except test dependencies onto BND FELIX-760: commit latest bindex code (based on r95 from the OSGi subversion repository) FELIX-699: set analyzer base before loading properties in manifest goal [ plus additional debug to help with problem determination ] I've built and signed the release candidate and made it available here: http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/ You can also find the KEYS for verifying the signature in this directory. To use the staging area as a plugin repository, add this to your POM: pluginRepositories pluginRepository idbundleplugin.staging/id urlhttp://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/url /pluginRepository /pluginRepositories Please check this release and cast your votes - the vote will be open until Wednesday 4th March to give people time to test the new plugin (and also because I'm starting this vote on a Friday). [ ] +1 Yes, release it now [ ] -1 No, don't release now (please provide specific comments) -- Cheers, Stuart
Re: [VOTE] release maven-bundle-plugin 2.0.0
Stuart McCulloch wrote: 2009/2/27 Richard S. Hall he...@ungoverned.org Cross posting a vote to three mailing lists? This doesn't seem like a good idea. posting a vote to dev and CC'ing it to users who'll want to test it out seems a good idea to me, especially as I think there are a lot of people who use the bundleplugin on these two other lists I think you'd be better off posting the vote to d...@felix and then posting a message to the other mailing list informing them about the vote. Then I wouldn't be getting lots of duplicate votes in my mailbox and messages to moderate for votes from non-subscribers. just posting it to the dev list limits the feedback on whether there are any showstopper bugs that will break people's existing projects - especially as this is a major update of functionality I agree it is worthwhile to make more people aware of the pending release, just debating the approach. binding votes will come via the dev list (and it's not as if I don't know who has binding votes...) See above. - richard - richard Stuart McCulloch wrote: Hi folks, I'd like to start a vote for the 2.0.0 release of the maven-bundle-plugin. This release primarily contains a major update of the Bnd tool, which now requires you to build with a Java5 JDK. It also contains a number of improvements requested by the community to improve usability. [ note you can still compile for earlier JVMs by using the appropriate source and target levels in the maven-compiler-plugin configuration ] Release 2.0.0 of the maven-bundle-plugin fixes the following issues: FELIX-807,FELIX-782,FELIX-660,FELIX-549,FELIX-546,FELIX-545, FELIX-831,FELIX-677 All fixed by updating to use the latest version of the Bnd Tool (0.0.311) FELIX-941: store the generated default symbolicname in $(maven-symbolicname) property FELIX-912: set default Export-Package based on local source files FELIX-684: support filters in excludeDependencies, such as *;scope=runtime FELIX-806: pickup archive settings and enable support of addMavenDescriptor setting FELIX-850: local fix for MSHARED-86 (should use isFile instead of exists) FELIX-899: widen dependency resolution and pass everything except test dependencies onto BND FELIX-760: commit latest bindex code (based on r95 from the OSGi subversion repository) FELIX-699: set analyzer base before loading properties in manifest goal [ plus additional debug to help with problem determination ] I've built and signed the release candidate and made it available here: http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/http://people.apache.org/%7Emcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/ You can also find the KEYS for verifying the signature in this directory. To use the staging area as a plugin repository, add this to your POM: pluginRepositories pluginRepository idbundleplugin.staging/id url http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0http://people.apache.org/%7Emcculls/releases/felix/maven-bundle-plugin/2.0.0 /url /pluginRepository /pluginRepositories Please check this release and cast your votes - the vote will be open until Wednesday 4th March to give people time to test the new plugin (and also because I'm starting this vote on a Friday). [ ] +1 Yes, release it now [ ] -1 No, don't release now (please provide specific comments) -- Cheers, Stuart
Re: [VOTE] release maven-bundle-plugin 2.0.0
+1 non binding vote On Fri, Feb 27, 2009 at 11:04 AM, Alin Dreghiciu adreghi...@gmail.comwrote: +1 (not binding) On Fri, Feb 27, 2009 at 11:01 AM, Stuart McCulloch mccu...@gmail.com wrote: Hi folks, I'd like to start a vote for the 2.0.0 release of the maven-bundle-plugin. This release primarily contains a major update of the Bnd tool, which now requires you to build with a Java5 JDK. It also contains a number of improvements requested by the community to improve usability. [ note you can still compile for earlier JVMs by using the appropriate source and target levels in the maven-compiler-plugin configuration ] Release 2.0.0 of the maven-bundle-plugin fixes the following issues: FELIX-807,FELIX-782,FELIX-660,FELIX-549,FELIX-546,FELIX-545, FELIX-831,FELIX-677 All fixed by updating to use the latest version of the Bnd Tool (0.0.311) FELIX-941: store the generated default symbolicname in $(maven-symbolicname) property FELIX-912: set default Export-Package based on local source files FELIX-684: support filters in excludeDependencies, such as *;scope=runtime FELIX-806: pickup archive settings and enable support of addMavenDescriptor setting FELIX-850: local fix for MSHARED-86 (should use isFile instead of exists) FELIX-899: widen dependency resolution and pass everything except test dependencies onto BND FELIX-760: commit latest bindex code (based on r95 from the OSGi subversion repository) FELIX-699: set analyzer base before loading properties in manifest goal [ plus additional debug to help with problem determination ] I've built and signed the release candidate and made it available here: http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/http://people.apache.org/%7Emcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/ You can also find the KEYS for verifying the signature in this directory. To use the staging area as a plugin repository, add this to your POM: pluginRepositories pluginRepository idbundleplugin.staging/id url http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0http://people.apache.org/%7Emcculls/releases/felix/maven-bundle-plugin/2.0.0 /url /pluginRepository /pluginRepositories Please check this release and cast your votes - the vote will be open until Wednesday 4th March to give people time to test the new plugin (and also because I'm starting this vote on a Friday). [ ] +1 Yes, release it now [ ] -1 No, don't release now (please provide specific comments) -- Cheers, Stuart - To unsubscribe, e-mail: users-unsubscr...@felix.apache.org For additional commands, e-mail: users-h...@felix.apache.org -- Alin Dreghiciu http://www.ops4j.org - New Energy for OSS Communities - Open Participation Software. http://www.qi4j.org - New Energy for Java - Domain Driven Development. http://www.codedragons.com - New Energy for Projects - Great People working on Great Projects at Great Places Sent from: Huissen Ge Netherlands. ___ general mailing list gene...@lists.ops4j.org http://lists.ops4j.org/mailman/listinfo/general -- Toni Menzel Software Developer t...@okidokiteam.com http://www.ops4j.org - New Energy for OSS Communities - Open Participation Software.
Re: [VOTE] release maven-bundle-plugin 2.0.0
2009/2/27 Richard S. Hall he...@ungoverned.org Cross posting a vote to three mailing lists? This doesn't seem like a good idea. posting a vote to dev and CC'ing it to users who'll want to test it out seems a good idea to me, especially as I think there are a lot of people who use the bundleplugin on these two other lists just posting it to the dev list limits the feedback on whether there are any showstopper bugs that will break people's existing projects - especially as this is a major update of functionality binding votes will come via the dev list (and it's not as if I don't know who has binding votes...) - richard Stuart McCulloch wrote: Hi folks, I'd like to start a vote for the 2.0.0 release of the maven-bundle-plugin. This release primarily contains a major update of the Bnd tool, which now requires you to build with a Java5 JDK. It also contains a number of improvements requested by the community to improve usability. [ note you can still compile for earlier JVMs by using the appropriate source and target levels in the maven-compiler-plugin configuration ] Release 2.0.0 of the maven-bundle-plugin fixes the following issues: FELIX-807,FELIX-782,FELIX-660,FELIX-549,FELIX-546,FELIX-545, FELIX-831,FELIX-677 All fixed by updating to use the latest version of the Bnd Tool (0.0.311) FELIX-941: store the generated default symbolicname in $(maven-symbolicname) property FELIX-912: set default Export-Package based on local source files FELIX-684: support filters in excludeDependencies, such as *;scope=runtime FELIX-806: pickup archive settings and enable support of addMavenDescriptor setting FELIX-850: local fix for MSHARED-86 (should use isFile instead of exists) FELIX-899: widen dependency resolution and pass everything except test dependencies onto BND FELIX-760: commit latest bindex code (based on r95 from the OSGi subversion repository) FELIX-699: set analyzer base before loading properties in manifest goal [ plus additional debug to help with problem determination ] I've built and signed the release candidate and made it available here: http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/http://people.apache.org/%7Emcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/ You can also find the KEYS for verifying the signature in this directory. To use the staging area as a plugin repository, add this to your POM: pluginRepositories pluginRepository idbundleplugin.staging/id url http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0http://people.apache.org/%7Emcculls/releases/felix/maven-bundle-plugin/2.0.0 /url /pluginRepository /pluginRepositories Please check this release and cast your votes - the vote will be open until Wednesday 4th March to give people time to test the new plugin (and also because I'm starting this vote on a Friday). [ ] +1 Yes, release it now [ ] -1 No, don't release now (please provide specific comments) -- Cheers, Stuart -- Cheers, Stuart
[jira] Commented: (FELIX-962) Erroneous class loading delegation to the application launcher classloader in some cases
[ https://issues.apache.org/jira/browse/FELIX-962?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12677417#action_12677417 ] Guillaume Nodet commented on FELIX-962: --- Are you guys happy with this patch or should I try something else ? Erroneous class loading delegation to the application launcher classloader in some cases Key: FELIX-962 URL: https://issues.apache.org/jira/browse/FELIX-962 Project: Felix Issue Type: Bug Components: Framework Reporter: Guillaume Nodet Priority: Critical Attachments: FELIX-962-bis.patch, FELIX-962.patch Here is an example stack trace: {code} processstoreimp...@50 daemon, priority=5, in group 'main', status: 'RUNNING' at org.apache.felix.framework.searchpolicy.ModuleImpl.searchDynamicImports(ModuleImpl.java:1,215) at org.apache.felix.framework.searchpolicy.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:558) at org.apache.felix.framework.searchpolicy.ModuleImpl.access$100(ModuleImpl.java:59) at org.apache.felix.framework.searchpolicy.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1,382) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at org.apache.felix.framework.searchpolicy.ModuleImpl.getClassByDelegation(ModuleImpl.java:428) at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1,341) at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:737) at org.springframework.osgi.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:99) at org.springframework.osgi.util.BundleDelegatingClassLoader.loadClass(BundleDelegatingClassLoader.java:156) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at org.apache.xbean.classloader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:184) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374) at java.lang.ClassLoader.defineClass1(ClassLoader.java:-1) at java.lang.ClassLoader.defineClass(ClassLoader.java:675) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at java.net.URLClassLoader.access$100(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(AccessController.java:-1) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at org.apache.xbean.classloader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:200) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374) at org.apache.openjpa.util.ProxyMaps.afterEntrySet(ProxyMaps.java:74) at org.apache.openjpa.util.java$util$HashMap$proxy.entrySet(Unknown Source:-1) at org.apache.openjpa.util.ProxyMaps.values(ProxyMaps.java:65) at org.apache.openjpa.util.java$util$HashMap$proxy.values(Unknown Source:-1) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:335) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:283) at org.apache.openjpa.kernel.StateManagerImpl.cascadeDelete(StateManagerImpl.java:2,861) at org.apache.openjpa.kernel.BrokerImpl.delete(BrokerImpl.java:2,566) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:387) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:372) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:329) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:283) at org.apache.openjpa.kernel.StateManagerImpl.cascadeDelete(StateManagerImpl.java:2,861) at org.apache.openjpa.kernel.BrokerImpl.delete(BrokerImpl.java:2,566) at org.apache.openjpa.kernel.BrokerImpl.delete(BrokerImpl.java:2,531) at org.apache.openjpa.kernel.DelegatingBroker.delete(DelegatingBroker.java:1,046) at org.apache.openjpa.persistence.EntityManagerImpl.remove(EntityManagerImpl.java:659) at org.apache.ode.store.jpa.JpaObj.delete(JpaObj.java:34) at org.apache.ode.store.jpa.DeploymentUnitDaoImpl.delete(DeploymentUnitDaoImpl.java:114) at org.apache.ode.store.ProcessStoreImpl$3.call(ProcessStoreImpl.java:303) at org.apache.ode.store.ProcessStoreImpl$3.call(ProcessStoreImpl.java:300) at
[jira] Commented: (FELIX-962) Erroneous class loading delegation to the application launcher classloader in some cases
[ https://issues.apache.org/jira/browse/FELIX-962?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12677418#action_12677418 ] Richard S. Hall commented on FELIX-962: --- I have been stuck working on a different issue, so I haven't really looked at it. It is probably ok, we just need some time to review and apply it. Erroneous class loading delegation to the application launcher classloader in some cases Key: FELIX-962 URL: https://issues.apache.org/jira/browse/FELIX-962 Project: Felix Issue Type: Bug Components: Framework Reporter: Guillaume Nodet Priority: Critical Attachments: FELIX-962-bis.patch, FELIX-962.patch Here is an example stack trace: {code} processstoreimp...@50 daemon, priority=5, in group 'main', status: 'RUNNING' at org.apache.felix.framework.searchpolicy.ModuleImpl.searchDynamicImports(ModuleImpl.java:1,215) at org.apache.felix.framework.searchpolicy.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:558) at org.apache.felix.framework.searchpolicy.ModuleImpl.access$100(ModuleImpl.java:59) at org.apache.felix.framework.searchpolicy.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1,382) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at org.apache.felix.framework.searchpolicy.ModuleImpl.getClassByDelegation(ModuleImpl.java:428) at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1,341) at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:737) at org.springframework.osgi.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:99) at org.springframework.osgi.util.BundleDelegatingClassLoader.loadClass(BundleDelegatingClassLoader.java:156) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at org.apache.xbean.classloader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:184) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374) at java.lang.ClassLoader.defineClass1(ClassLoader.java:-1) at java.lang.ClassLoader.defineClass(ClassLoader.java:675) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at java.net.URLClassLoader.access$100(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(AccessController.java:-1) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at org.apache.xbean.classloader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:200) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374) at org.apache.openjpa.util.ProxyMaps.afterEntrySet(ProxyMaps.java:74) at org.apache.openjpa.util.java$util$HashMap$proxy.entrySet(Unknown Source:-1) at org.apache.openjpa.util.ProxyMaps.values(ProxyMaps.java:65) at org.apache.openjpa.util.java$util$HashMap$proxy.values(Unknown Source:-1) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:335) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:283) at org.apache.openjpa.kernel.StateManagerImpl.cascadeDelete(StateManagerImpl.java:2,861) at org.apache.openjpa.kernel.BrokerImpl.delete(BrokerImpl.java:2,566) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:387) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:372) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:329) at org.apache.openjpa.kernel.SingleFieldManager.delete(SingleFieldManager.java:283) at org.apache.openjpa.kernel.StateManagerImpl.cascadeDelete(StateManagerImpl.java:2,861) at org.apache.openjpa.kernel.BrokerImpl.delete(BrokerImpl.java:2,566) at org.apache.openjpa.kernel.BrokerImpl.delete(BrokerImpl.java:2,531) at org.apache.openjpa.kernel.DelegatingBroker.delete(DelegatingBroker.java:1,046) at org.apache.openjpa.persistence.EntityManagerImpl.remove(EntityManagerImpl.java:659) at org.apache.ode.store.jpa.JpaObj.delete(JpaObj.java:34) at org.apache.ode.store.jpa.DeploymentUnitDaoImpl.delete(DeploymentUnitDaoImpl.java:114) at org.apache.ode.store.ProcessStoreImpl$3.call(ProcessStoreImpl.java:303) at
[jira] Commented: (FELIX-961) 100% CPU looping inside uses calculation
[ https://issues.apache.org/jira/browse/FELIX-961?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12677425#action_12677425 ] Richard S. Hall commented on FELIX-961: --- As a side note, from my understanding of how Equinox works, if it detects a resolve is taking too long, it just takes the best result it has so far and excludes any bundles that could not resolve and resolves the rest. This approach may make sense for Equinox because it resolves all unresolved bundles every time it resolves any, but Felix' resolver is incremental, meaning it only resolves the bundles it needs to resolve. Thus, in Felix if you resolve bundle foo, only bundles related to foo through dependencies will be resolved. There are no other byproducts. If foo fails to resolve, then there is no change to the resolved state. This is not true for Equinox. However, we could potentially modify Felix' resolver to simply fail if it starts to take too long, rather than run until it finds a solution or fails (which could take a long time). Keep in mind that Equinox' best effort approach is just a way to end a long resolve, it doesn't necessarily result in a solution for a particular bundle, it just results in whatever it could accomplish, which may or may not include the bundle you wanted to resolve. 100% CPU looping inside uses calculation Key: FELIX-961 URL: https://issues.apache.org/jira/browse/FELIX-961 Project: Felix Issue Type: Bug Components: Framework Affects Versions: felix-1.4.1 Reporter: Stuart McCulloch Assignee: Richard S. Hall Attachments: USES_TESTCASE.zip, USES_TESTCASE2.zip While investigating a problem report against pax-runner (http://article.gmane.org/gmane.comp.java.ops4j.general/6778) I found it was actually caused by a 100% CPU loop inside the uses calculation code. In Felix 1.4.1 this was stopping the shell bundle from activating, hence the lack of console. Using the trunk build I can get a console, but the looping still occurs with the testcase. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Resolved: (FELIX-961) 100% CPU looping inside uses calculation
[ https://issues.apache.org/jira/browse/FELIX-961?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Richard S. Hall resolved FELIX-961. --- Resolution: Fixed Fix Version/s: felix-1.6.0 I think TESTCASE2 was interesting, since it demonstrated that it is fairly easy to get into fairly long running uses constraint violations without a really complicated use case. In this particular case, the issue arose because bundles were overriding packages provided by the system bundle. This resulted in lots of imports that had two candidates, one from the system bundle and one from another bundle. This ended up being a worst case scenario since the system bundle export was chosen first, since it was resolved already and resolved packages are given preference. I noticed that some bundles eliminated the system bundle by including a version range on their imports, but others did not. If all bundles imported with an appropriate version range, then this issue would not have appeared, since there wouldn't have been so many imports with multiple candidates. As a result, I implemented two fixes for this: 1. I noticed that some runs wouldn't take long depending on the order of the bundles when calculating uses constraints, which changed since they were pulled out of a map. If bundles with lots of potential candidates for their imports were handled first, it seemed to be quicker. Thus, I modified the resolver to first sort the bundles based the number of potential candidates they had. This change got the resolver completing consistently in about 15 seconds with testcase2. 2. The algorithm for permutating from one set of potential candidates to another when a constraint violation is detected is exhaustive, but not very smart. In an effort to make it a little smarter, I thought of a way to make it permutate the candidates for a specific bundle when a constraint is detected without losing the ability to be exhaustive; now the resolver rotates the potential candidates for the bundle where the constraint violation was detected and retests. This change got the resolver completing consistently in about 1 second with testcase2. It is not clear if these fixes are general or specific to testcase2, but my intuition says they should provide general improvements. However, they have not fixed the worst case situation and it is still possible some set of bundles could cause the resolver to go on for a very long time trying to find a solution. The only solution here is to fail after a certain amount of time or to completely rewrite the resolver. 100% CPU looping inside uses calculation Key: FELIX-961 URL: https://issues.apache.org/jira/browse/FELIX-961 Project: Felix Issue Type: Bug Components: Framework Affects Versions: felix-1.4.1 Reporter: Stuart McCulloch Assignee: Richard S. Hall Fix For: felix-1.6.0 Attachments: USES_TESTCASE.zip, USES_TESTCASE2.zip While investigating a problem report against pax-runner (http://article.gmane.org/gmane.comp.java.ops4j.general/6778) I found it was actually caused by a 100% CPU loop inside the uses calculation code. In Felix 1.4.1 this was stopping the shell bundle from activating, hence the lack of console. Using the trunk build I can get a console, but the looping still occurs with the testcase. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (FELIX-961) 100% CPU looping inside uses calculation
[ https://issues.apache.org/jira/browse/FELIX-961?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12677427#action_12677427 ] Richard S. Hall commented on FELIX-961: --- I forgot to add, I'd be interested in others reporting any results they have and for this issue to be closed if the original issue is resolved. 100% CPU looping inside uses calculation Key: FELIX-961 URL: https://issues.apache.org/jira/browse/FELIX-961 Project: Felix Issue Type: Bug Components: Framework Affects Versions: felix-1.4.1 Reporter: Stuart McCulloch Assignee: Richard S. Hall Fix For: felix-1.6.0 Attachments: USES_TESTCASE.zip, USES_TESTCASE2.zip While investigating a problem report against pax-runner (http://article.gmane.org/gmane.comp.java.ops4j.general/6778) I found it was actually caused by a 100% CPU loop inside the uses calculation code. In Felix 1.4.1 this was stopping the shell bundle from activating, hence the lack of console. Using the trunk build I can get a console, but the looping still occurs with the testcase. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
Re: [VOTE] release maven-bundle-plugin 2.0.0
+1 - richard Stuart McCulloch wrote: Hi folks, I'd like to start a vote for the 2.0.0 release of the maven-bundle-plugin. This release primarily contains a major update of the Bnd tool, which now requires you to build with a Java5 JDK. It also contains a number of improvements requested by the community to improve usability. [ note you can still compile for earlier JVMs by using the appropriate source and target levels in the maven-compiler-plugin configuration ] Release 2.0.0 of the maven-bundle-plugin fixes the following issues: FELIX-807,FELIX-782,FELIX-660,FELIX-549,FELIX-546,FELIX-545, FELIX-831,FELIX-677 All fixed by updating to use the latest version of the Bnd Tool (0.0.311) FELIX-941: store the generated default symbolicname in $(maven-symbolicname) property FELIX-912: set default Export-Package based on local source files FELIX-684: support filters in excludeDependencies, such as *;scope=runtime FELIX-806: pickup archive settings and enable support of addMavenDescriptor setting FELIX-850: local fix for MSHARED-86 (should use isFile instead of exists) FELIX-899: widen dependency resolution and pass everything except test dependencies onto BND FELIX-760: commit latest bindex code (based on r95 from the OSGi subversion repository) FELIX-699: set analyzer base before loading properties in manifest goal [ plus additional debug to help with problem determination ] I've built and signed the release candidate and made it available here: http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/ You can also find the KEYS for verifying the signature in this directory. To use the staging area as a plugin repository, add this to your POM: pluginRepositories pluginRepository idbundleplugin.staging/id urlhttp://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/url /pluginRepository /pluginRepositories Please check this release and cast your votes - the vote will be open until Wednesday 4th March to give people time to test the new plugin (and also because I'm starting this vote on a Friday). [ ] +1 Yes, release it now [ ] -1 No, don't release now (please provide specific comments) -- Cheers, Stuart
Re: [VOTE] release maven-bundle-plugin 2.0.0
+1 Regards Clement Sent from my iPhone On 27.02.2009, at 20:30, Richard S. Hall he...@ungoverned.org wrote: +1 - richard Stuart McCulloch wrote: Hi folks, I'd like to start a vote for the 2.0.0 release of the maven-bundle- plugin. This release primarily contains a major update of the Bnd tool, which now requires you to build with a Java5 JDK. It also contains a number of improvements requested by the community to improve usability. [ note you can still compile for earlier JVMs by using the appropriate source and target levels in the maven-compiler-plugin configuration ] Release 2.0.0 of the maven-bundle-plugin fixes the following issues: FELIX-807,FELIX-782,FELIX-660,FELIX-549,FELIX-546,FELIX-545, FELIX-831,FELIX-677 All fixed by updating to use the latest version of the Bnd Tool (0.0.311) FELIX-941: store the generated default symbolicname in $(maven-symbolicname) property FELIX-912: set default Export-Package based on local source files FELIX-684: support filters in excludeDependencies, such as *;scope=runtime FELIX-806: pickup archive settings and enable support of addMavenDescriptor setting FELIX-850: local fix for MSHARED-86 (should use isFile instead of exists) FELIX-899: widen dependency resolution and pass everything except test dependencies onto BND FELIX-760: commit latest bindex code (based on r95 from the OSGi subversion repository) FELIX-699: set analyzer base before loading properties in manifest goal [ plus additional debug to help with problem determination ] I've built and signed the release candidate and made it available here: http://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0/org/apache/felix/maven-bundle-plugin/2.0.0/ You can also find the KEYS for verifying the signature in this directory. To use the staging area as a plugin repository, add this to your POM: pluginRepositories pluginRepository idbundleplugin.staging/id urlhttp://people.apache.org/~mcculls/releases/felix/maven-bundle-plugin/2.0.0 /url /pluginRepository /pluginRepositories Please check this release and cast your votes - the vote will be open until Wednesday 4th March to give people time to test the new plugin (and also because I'm starting this vote on a Friday). [ ] +1 Yes, release it now [ ] -1 No, don't release now (please provide specific comments) -- Cheers, Stuart