continuum-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Coy (JIRA)" <j...@codehaus.org>
Subject [jira] Commented: (CONTINUUM-2496) Continuum startup hangs if enabled build agent is not available
Date Tue, 27 Apr 2010 15:04:12 GMT

    [ http://jira.codehaus.org/browse/CONTINUUM-2496?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=219118#action_219118
] 

Stephen Coy commented on CONTINUUM-2496:
----------------------------------------

This problem can be replicated using the continuum-webapp-test.

Add this profile to the pom:

    <profile>
      <id>run-container</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.codehaus.cargo</groupId>
            <artifactId>cargo-maven2-plugin</artifactId>
            <version>1.0</version>
            <executions>
              <execution>
                <id>start-container</id>
                <phase>pre-integration-test</phase>
                <goals>
                  <goal>start</goal>
                </goals>
                <configuration>
                  <wait>false</wait>
                </configuration>
              </execution>
              <execution>
                <id>stop-container</id>
                <phase>post-integration-test</phase>
                <goals>
                  <goal>stop</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <container>
                <containerId>${container.name}</containerId>
                <log>${project.build.directory}/logs/${container.name}.log</log>
                <output>${project.build.directory}/logs/${container.name}.out</output>
                <timeout>600000</timeout>
                <systemProperties>
                  <appserver.base>${project.build.directory}</appserver.base>
                  <derby.system.home>${project.build.directory}</derby.system.home>
                  <svn.base.url>${svn.base.url}</svn.base.url>
                </systemProperties>
                <dependencies>
                  <dependency>
                    <groupId>org.apache.derby</groupId>
                    <artifactId>derby</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>javax.mail</groupId>
                    <artifactId>mail</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>javax.activation</groupId>
                    <artifactId>activation</artifactId>
                  </dependency>
                </dependencies>
              </container>
              <configuration>
                <home>${project.build.directory}/${container.name}</home>
                <type>standalone</type>
                <properties>
                  <cargo.servlet.port>9595</cargo.servlet.port>
                  <cargo.jvmargs>-Xmx512m -XX:MaxPermSize=128m</cargo.jvmargs>
                  <cargo.datasource.datasource.users>
                    cargo.datasource.driver=org.apache.derby.jdbc.EmbeddedDriver|
                    cargo.datasource.url=jdbc:derby:${project.build.directory}/databases/${container.name}/users;create=false|
                    cargo.datasource.jndi=jdbc/users|
                    cargo.datasource.username=sa
                  </cargo.datasource.datasource.users>
                  <cargo.datasource.datasource.builds>
                    cargo.datasource.driver=org.apache.derby.jdbc.EmbeddedDriver|
                    cargo.datasource.url=jdbc:derby:${project.build.directory}/databases/${container.name}/builds;create=false|
                    cargo.datasource.jndi=jdbc/continuum|
                    cargo.datasource.username=sa
                  </cargo.datasource.datasource.builds>
                  <cargo.resource.resource.mail>
                    cargo.resource.name=mail/Session|
                    cargo.resource.type=javax.mail.Session|
                    cargo.resource.factory=org.apache.naming.factory.MailSessionFactory|
                    cargo.resource.parameters=mail.smtp.host=localhost
                  </cargo.resource.resource.mail>
                </properties>
              </configuration>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>

Perform the normal mvn clean install and let it run to completion. This leaves a build agent
configured.

Then run

  mvn pre-integration-test -P run-container

which just attempts to restart the Tomcat instance built during the first run. It hangs in
the same place as described

> Continuum startup hangs if enabled build agent is not available
> ---------------------------------------------------------------
>
>                 Key: CONTINUUM-2496
>                 URL: http://jira.codehaus.org/browse/CONTINUUM-2496
>             Project: Continuum
>          Issue Type: Bug
>          Components: Distributed Builds
>    Affects Versions: 1.3.6
>            Reporter: Stephen Coy
>             Fix For: Backlog
>
>
> This is particularly a problem when using the same container for both continuum and a
build agent. 
> Here's a thread dump of the hang:
> "main" prio=10 tid=0x09593800 nid=0x47c6 runnable [0x73693000]
>    java.lang.Thread.State: RUNNABLE
> 	at java.net.SocketInputStream.socketRead0(Native Method)
> 	at java.net.SocketInputStream.read(SocketInputStream.java:129)
> 	at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
> 	at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
> 	at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
> 	- locked <0x7504da58> (a java.io.BufferedInputStream)
> 	at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687)
> 	at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:632)
> 	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1072)
> 	- locked <0x74ffab50> (a sun.net.www.protocol.http.HttpURLConnection)
> 	at org.apache.xmlrpc.client.XmlRpcSunHttpTransport.getInputStream(XmlRpcSunHttpTransport.java:63)
> 	at org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:141)
> 	at org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:94)
> 	at org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:44)
> 	at org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:53)
> 	at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:166)
> 	at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:157)
> 	at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:146)
> 	at com.atlassian.xmlrpc.RPCCallMethodInterceptor.invoke(RPCCallMethodInterceptor.java:62)
> 	at $Proxy284.ping(Unknown Source)
> 	at org.apache.continuum.distributed.transport.slave.SlaveBuildAgentTransportClient.ping(SlaveBuildAgentTransportClient.java:154)
> 	at org.apache.continuum.builder.distributed.manager.DefaultDistributedBuildManager.initialize(DefaultDistributedBuildManager.java:134)
> 	- locked <0x74988788> (a java.util.Collections$SynchronizedMap)
> 	at org.codehaus.plexus.spring.PlexusLifecycleBeanPostProcessor.postProcessAfterInitialization(PlexusLifecycleBeanPostProcessor.java:217)
> 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:404)
> 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.postProcessObjectFromFactoryBean(AbstractAutowireCapableBeanFactory.java:1544)
> 	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:163)
> 	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:102)
> 	- locked <0x846e11d0> (a java.util.concurrent.ConcurrentHashMap)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1387)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:244)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
> 	at org.codehaus.plexus.spring.PlexusComponentFactoryBean.resolveRequirement(PlexusComponentFactoryBean.java:246)
> 	at org.codehaus.plexus.spring.PlexusComponentFactoryBean.createInstance(PlexusComponentFactoryBean.java:163)
> 	at org.codehaus.plexus.spring.PlexusComponentFactoryBean.getObject(PlexusComponentFactoryBean.java:108)
> 	- locked <0x8550aac8> (a org.codehaus.plexus.spring.PlexusComponentFactoryBean)
> 	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:143)
> 	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:102)
> 	- locked <0x846e11d0> (a java.util.concurrent.ConcurrentHashMap)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1387)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:244)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
> 	at org.codehaus.plexus.spring.PlexusComponentFactoryBean.createInstance(PlexusComponentFactoryBean.java:141)
> 	at org.codehaus.plexus.spring.PlexusComponentFactoryBean.getObject(PlexusComponentFactoryBean.java:108)
> 	- locked <0x85404db0> (a org.codehaus.plexus.spring.PlexusComponentFactoryBean)
> 	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:143)
> 	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:102)
> 	- locked <0x846e11d0> (a java.util.concurrent.ConcurrentHashMap)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1387)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:244)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
> 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:386)
> 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:376)
> 	at org.springframework.context.support.AbstractApplicationContext.getBeansOfType(AbstractApplicationContext.java:1109)
> 	at org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors(BeanFactoryUtils.java:221)
> 	at org.apache.maven.continuum.notification.manager.spring.NotifierFactoryBean.getObject(NotifierFactoryBean.java:51)
> 	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:143)
> 	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:109)
> 	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:274)
> 	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:120)
> 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1308)
> 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1067)
> 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
> 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
> 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
> 	- locked <0x846e11d0> (a java.util.concurrent.ConcurrentHashMap)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
> 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:562)
> 	- locked <0x846e14d8> (a java.util.concurrent.ConcurrentHashMap)
> 	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871)
> 	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423)
> 	- locked <0x846882e8> (a java.lang.Object)
> 	at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:272)
> 	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:196)
> 	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
> 	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3910)
> 	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4393)
> 	- locked <0x84688340> (a org.apache.catalina.core.StandardContext)
> 	at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeployInternal(TomcatDeployment.java:310)
> 	at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeploy(TomcatDeployment.java:142)
> 	at org.jboss.web.deployers.AbstractWarDeployment.start(AbstractWarDeployment.java:461)
> 	- locked <0x84688570> (a org.jboss.web.tomcat.service.deployers.TomcatDeployment)
> 	at org.jboss.web.deployers.WebModule.startModule(WebModule.java:118)
> 	- locked <0x84688088> (a org.jboss.web.deployers.WebModule)
> 	at org.jboss.web.deployers.WebModule.start(WebModule.java:97)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
> 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
> 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
> 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
> 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
> 	at org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:206)
> 	at $Proxy38.start(Unknown Source)
> 	at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLifecycleAction.java:42)
> 	at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLifecycleAction.java:37)
> 	at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
> 	at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
> 	at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
> 	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
> 	at org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerContext.java:286)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
> 	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
> 	at org.jboss.system.ServiceController.doChange(ServiceController.java:688)
> 	at org.jboss.system.ServiceController.start(ServiceController.java:460)
> 	at org.jboss.system.deployers.ServiceDeployer.start(ServiceDeployer.java:163)
> 	at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:99)
> 	at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46)
> 	at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62)
> 	at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
> 	at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1439)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1157)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1178)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098)
> 	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
> 	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
> 	at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:702)
> 	at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
> 	at org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployAction.java:70)
> 	at org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileAction.java:53)
> 	at org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfileService.java:361)
> 	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
> 	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
> 	at org.jboss.system.server.profileservice.repository.AbstractProfileService.activateProfile(AbstractProfileService.java:306)
> 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:271)
> 	at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461)
> 	at org.jboss.Main.boot(Main.java:221)
> 	at org.jboss.Main$1.run(Main.java:556)
> 	at java.lang.Thread.run(Thread.java:619)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message