[
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