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 2010/08/20 18:32:15 UTC

[jira] Closed: (FELIX-2258) isClassSpaceConsistent() and calculateUsesConstraints() take 100% CPU

     [ https://issues.apache.org/jira/browse/FELIX-2258?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Richard S. Hall closed FELIX-2258.
----------------------------------

    Resolution: Not A Problem

I am closing this bug, since it appears to work in framework 3.0.x...

> isClassSpaceConsistent() and calculateUsesConstraints() take 100% CPU
> ---------------------------------------------------------------------
>
>                 Key: FELIX-2258
>                 URL: https://issues.apache.org/jira/browse/FELIX-2258
>             Project: Felix
>          Issue Type: Bug
>          Components: Framework
>    Affects Versions: framework-2.0.2
>         Environment: debian
> Java(TM) SE Runtime Environment (build 1.6.0_16-b01)
> Java HotSpot(TM) Client VM (build 14.2-b01, mixed mode, sharing)
>            Reporter: Leen Toelen
>         Attachments: profiler-snapshot.JPG, profiler.JPG
>
>
> Running this config causes felix to run endlessly:
> ################################################
> #              ______  ________  __  __        #
> #             / __  / /  __   / / / / /        #
> #            /  ___/ /  __   / _\ \ _/         #
> #           /  /    /  / /  / / _\ \           #
> #          /__/    /__/ /__/ /_/ /_/           #
> #                                              #
> # Pax Runner from OPS4J - http://www.ops4j.org #
> ################################################
> ##############################
> # Felix settings
> ##############################
> org.osgi.framework.storage=felix/cache/runner
> org.osgi.framework.startlevel.beginning=6
> felix.startlevel.bundle=5
> org.osgi.framework.storage.clean=onFirstInit
> org.osgi.framework.executionenvironment=J2SE-1.2,J2SE-1.3,J2SE-1.4,J2SE-1.5,JRE-1.1,JavaSE-1.6,OSGi/Minimum-1.0,OSGi/Minimum-1.1,OSGi/Minimum-1.2
> org.osgi.framework.system.packages=javax.accessibility,javax.activation,javax.activity,javax.annotation,javax.annotation.processing,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.bmp,javax.imageio.plugins.jpeg,javax.imageio.spi,javax.imageio.stream,javax.jws,javax.jws.soap,javax.lang.model,javax.lang.model.element,javax.lang.model.type,javax.lang.model.util,javax.management,javax.management.loading,javax.management.modelmbean,javax.management.monitor,javax.management.openmbean,javax.management.relation,javax.management.remote,javax.management.remote.rmi,javax.management.timer,javax.naming,javax.naming.directory,javax.naming.event,javax.naming.ldap,javax.naming.spi,javax.net,javax.net.ssl,javax.print,javax.print.attribute,javax.print.attribute.standard,javax.print.event,javax.rmi,javax.rmi.CORBA,javax.rmi.ssl,javax.script,javax.security.auth,javax.security.auth.callback,javax.security.auth.kerberos,javax.security.auth.login,javax.security.auth.spi,javax.security.auth.x500,javax.security.cert,javax.security.sasl,javax.sound.midi,javax.sound.midi.spi,javax.sound.sampled,javax.sound.sampled.spi,javax.sql,javax.sql.rowset,javax.sql.rowset.serial,javax.sql.rowset.spi,javax.swing,javax.swing.border,javax.swing.colorchooser,javax.swing.event,javax.swing.filechooser,javax.swing.plaf,javax.swing.plaf.basic,javax.swing.plaf.metal,javax.swing.plaf.multi,javax.swing.plaf.synth,javax.swing.table,javax.swing.text,javax.swing.text.html,javax.swing.text.html.parser,javax.swing.text.rtf,javax.swing.tree,javax.swing.undo,javax.tools,javax.transaction,javax.transaction.xa,javax.xml,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.bind.util,javax.xml.crypto,javax.xml.crypto.dom,javax.xml.crypto.dsig,javax.xml.crypto.dsig.dom,javax.xml.crypto.dsig.keyinfo,javax.xml.crypto.dsig.spec,javax.xml.datatype,javax.xml.namespace,javax.xml.parsers,javax.xml.soap,javax.xml.stream,javax.xml.stream.events,javax.xml.stream.util,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stax,javax.xml.transform.stream,javax.xml.validation,javax.xml.ws,javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.ws.http,javax.xml.ws.soap,javax.xml.ws.spi,javax.xml.xpath,org.ietf.jgss,org.omg.CORBA,org.omg.CORBA.DynAnyPackage,org.omg.CORBA.ORBPackage,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.omg.CORBA_2_3,org.omg.CORBA_2_3.portable,org.omg.CosNaming,org.omg.CosNaming.NamingContextExtPackage,org.omg.CosNaming.NamingContextPackage,org.omg.Dynamic,org.omg.DynamicAny,org.omg.DynamicAny.DynAnyFactoryPackage,org.omg.DynamicAny.DynAnyPackage,org.omg.IOP,org.omg.IOP.CodecFactoryPackage,org.omg.IOP.CodecPackage,org.omg.Messaging,org.omg.PortableInterceptor,org.omg.PortableInterceptor.ORBInitInfoPackage,org.omg.PortableServer,org.omg.PortableServer.CurrentPackage,org.omg.PortableServer.POAManagerPackage,org.omg.PortableServer.POAPackage,org.omg.PortableServer.ServantLocatorPackage,org.omg.PortableServer.portable,org.omg.SendingContext,org.omg.stub.java.rmi,org.w3c.dom,org.w3c.dom.bootstrap,org.w3c.dom.css,org.w3c.dom.events,org.w3c.dom.html,org.w3c.dom.ls,org.w3c.dom.ranges,org.w3c.dom.stylesheets,org.w3c.dom.traversal,org.w3c.dom.views ,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,org.osgi.framework;version=1.5.0,org.osgi.framework.launch;version=1.0.0,org.osgi.framework.hooks.service;version=1.0.0,org.osgi.service.packageadmin;version=1.2.0,org.osgi.service.startlevel;version=1.1.0,org.osgi.service.url;version=1.0.0,org.osgi.util.tracker;version=1.4.0
> ##############################
> # Client bundles to install
> ##############################
> felix.auto.start.5=\
> "file:bundles/com.springsource.javax.mail_1.4.1.jar" \
> "file:bundles/com.springsource.javax.activation_1.1.1.jar" \
> "file:bundles/com.springsource.net.sourceforge.jtds_1.2.2.jar" \
> "file:bundles/com.springsource.org.apache.commons.dbcp_1.2.2.osgi.jar" \
> "file:bundles/com.springsource.org.apache.commons.beanutils_1.8.0.jar" \
> "file:bundles/com.springsource.javax.persistence_1.99.0.jar" \
> "file:bundles/com.springsource.org.apache.log4j_1.2.15.jar" \
> "file:bundles/com.springsource.javax.annotation_1.0.0.jar" \
> "file:bundles/com.springsource.jcifs_1.2.15.jar" \
> "file:bundles/org.springframework.orm_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.jdbc_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.transaction_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.web_3.0.0.RELEASE.jar" \
> "file:bundles/com.springsource.org.apache.velocity_1.6.2.jar" \
> "file:bundles/com.springsource.org.apache.commons.pool_1.3.0.jar" \
> "file:bundles/com.springsource.org.apache.commons.lang_2.4.0.jar" \
> "file:bundles/com.springsource.org.apache.commons.collections_3.2.1.jar" \
> "file:bundles/com.springsource.net.sf.ehcache_1.6.2.jar" \
> "file:bundles/com.springsource.org.eclipse.persistence_1.1.0.jar" \
> "file:bundles/com.springsource.org.eclipse.persistence.antlr_1.1.0.jar" \
> "file:bundles/com.springsource.org.eclipse.persistence.asm_1.1.0.jar" \
> "file:bundles/com.springsource.org.eclipse.persistence.jpa_1.1.0.jar" \
> "file:bundles/com.springsource.javax.inject_1.0.0.jar" \
> "file:bundles/com.springsource.org.apache.commons.codec_1.4.0.jar" \
> "file:bundles/com.springsource.org.apache.activemq_5.3.0.jar" \
> "file:bundles/com.springsource.org.apache.xmlcommons_1.3.4.jar" \
> "file:bundles/org.springframework.jms_3.0.0.RELEASE.jar" \
> "file:bundles/com.springsource.javax.jms_1.1.0.jar" \
> "file:bundles/com.springsource.javax.management.j2ee_1.0.1.jar" \
> "file:bundles/com.springsource.org.apache.kahadb_5.3.0.jar" \
> "file:bundles/com.springsource.org.apache.commons.logging_1.1.1.jar" \
> "file:bundles/com.springsource.javax.resource_1.5.0.jar" \
> "file:bundles/com.springsource.javax.ejb_3.0.0.jar" \
> "file:bundles/com.springsource.javax.xml.rpc_1.1.0.jar" \
> "file:bundles/com.springsource.javax.xml.soap_1.3.0.jar" \
> "file:bundles/com.springsource.javax.transaction_1.1.0.jar" \
> "file:bundles/org.apache.servicemix.specs.jaxb-api-2.1_1.4.0.jar" \
> "file:bundles/org.apache.servicemix.bundles.jaxb-impl_2.1.12.1.jar" \
> "file:bundles/org.apache.servicemix.bundles.xstream_1.3.0.3.jar" \
> "file:bundles/org.apache.servicemix.bundles.fastinfoset_1.2.7.2.jar" \
> "file:bundles/org.apache.servicemix.specs.stax-api-1.0_1.4.0.jar" \
> "file:bundles/org.apache.servicemix.bundles.dom4j_1.6.1.2.jar" \
> "file:bundles/org.apache.servicemix.bundles.xpp3_1.1.0.4c_3.jar" \
> "file:bundles/org.ops4j.pax.logging.pax-logging-api_1.4.jar" \
> "file:bundles/org.ops4j.pax.logging.pax-logging-service_1.4.jar" \
> "file:bundles/com.springsource.org.aopalliance_1.0.0.jar" \
> "file:bundles/org.springframework.aop_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.asm_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.beans_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.context_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.context.support_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.core_3.0.0.RELEASE.jar" \
> "file:bundles/org.springframework.expression_3.0.0.RELEASE.jar" \
> "file:bundles/com.springsource.org.objectweb.asm_2.2.3.jar" \
> "file:bundles/com.springsource.net.sf.cglib_2.1.3.jar" \
> "file:bundles/org.springframework.osgi.extensions.annotations_2.0.0.M1.jar" \
> "file:bundles/org.springframework.osgi.core_2.0.0.M1.jar" \
> "file:bundles/org.springframework.osgi.extender_2.0.0.M1.jar" \
> "file:bundles/org.springframework.osgi.io_2.0.0.M1.jar" \
> "file:bundles/org.ops4j.pax.web.pax-web-jetty-bundle_0.7.2.jar" \
> "file:bundles/org.apache.felix.webconsole_2.0.6.jar" \
> "file:bundles/org.apache.felix.configadmin_1.2.4.jar" \
> "file:bundles/org.apache.felix.eventadmin_1.0.0.jar" \
> "file:bundles/org.apache.felix.prefs_1.0.4.jar" \
> "file:bundles/org.apache.felix.fileinstall_2.0.4.jar" \
> "file:bundles/org.apache.felix.scr_1.0.8.jar" \
> "file:bundles/osgi.cmpn_4.2.0.200908310645.jar" \
> "file:bundles/com.springsource.com.thoughtworks.xstream_1.3.1.jar" \
> "file:bundles/org.springframework.oxm_3.0.0.RELEASE.jar" \
> "file:bundles/org.apache.felix.bundlerepository_1.4.2.jar"
> When I sample the CPU using VisualVM, I see that these functions takes a llot of CPU:
> org.apache.felix.framework.searchpolicy.Resolver.isClassSpaceConsistent() 
> org.apache.felix.framework.searchpolicy.Resolver.calculateUsesConstraints() 
> I have not yet seen it going any further, and I have let it run for 1 hour multiple times.
> When I remove these two bundles:
> "file:bundles/com.springsource.com.thoughtworks.xstream_1.3.1.jar" \
> "file:bundles/org.springframework.oxm_3.0.0.RELEASE.jar" \
> felix starts up just fine.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.