Brent N Atkinson created CONTINUUM-2736:
-------------------------------------------
Summary: Continuum's build intermittently fails due to failed test
tear down
Key: CONTINUUM-2736
URL: https://jira.codehaus.org/browse/CONTINUUM-2736
Project: Continuum
Issue Type: Bug
Affects Versions: 1.5.0
Environment: Building on continuum-ci.apache.org [1.4.2 (1600098)]
Building continuum 1.5-SNAPSHOT (trunk@1661283)
Reporter: Brent N Atkinson
Continuum's build appears to have intermittent troubles executing on
continuum-ci.apache.org. It is not entirely clear what is happening, but it
appears that a failure during a test tear-down is interacting with subsequent
(and unrelated) tests and causing them to fail as well.
>From the build output, it appears that the first test,
>PrepareBuildProjectsTaskExecutorTest#testCheckoutPrepareBuildSingleCheckoutFlatMultiModuleProject,
> fails from a foreign key violation when deleting the data store:
{code}
javax.jdo.JDOUserException: One or more instances could not be deleted
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1541)
at
org.jpox.store.rdbms.query.JDOQLQuery.performDeletePersistentAll(JDOQLQuery.java:687)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1120)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1075)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1049)
at
org.codehaus.plexus.jdo.PlexusJdoUtils.removeAll(PlexusJdoUtils.java:444)
at
org.apache.continuum.dao.DaoUtilsImpl.eraseDatabase(DaoUtilsImpl.java:87)
at
org.apache.maven.continuum.AbstractContinuumTest.tearDown(AbstractContinuumTest.java:106)
at junit.framework.TestCase.runBare(TestCase.java:146)
at junit.framework.TestResult$1.protect(TestResult.java:122)
at junit.framework.TestResult.runProtected(TestResult.java:142)
at junit.framework.TestResult.run(TestResult.java:125)
at junit.framework.TestCase.run(TestCase.java:129)
at junit.framework.TestSuite.runTest(TestSuite.java:252)
at junit.framework.TestSuite.run(TestSuite.java:247)
at
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:86)
at
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:236)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:134)
at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:622)
at
org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at
org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at
org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:103)
at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74)
NestedThrowablesStackTrace:
javax.jdo.JDOUserException: One or more instances could not be deleted
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1541)
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1514)
at
org.jpox.store.rdbms.scostore.FKListStore.clear(FKListStore.java:1137)
at
org.jpox.store.mapping.CollectionMapping.deleteDependent(CollectionMapping.java:334)
at
org.jpox.store.rdbms.table.ClassTable.deleteDependent(ClassTable.java:2651)
at org.jpox.store.StoreManager.deleteDependent(StoreManager.java:1076)
at
org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4405)
at
org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1489)
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1532)
at
org.jpox.store.rdbms.query.JDOQLQuery.performDeletePersistentAll(JDOQLQuery.java:687)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1120)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1075)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1049)
at
org.codehaus.plexus.jdo.PlexusJdoUtils.removeAll(PlexusJdoUtils.java:444)
at
org.apache.continuum.dao.DaoUtilsImpl.eraseDatabase(DaoUtilsImpl.java:87)
at
org.apache.maven.continuum.AbstractContinuumTest.tearDown(AbstractContinuumTest.java:106)
at junit.framework.TestCase.runBare(TestCase.java:146)
at junit.framework.TestResult$1.protect(TestResult.java:122)
at junit.framework.TestResult.runProtected(TestResult.java:142)
at junit.framework.TestResult.run(TestResult.java:125)
at junit.framework.TestCase.run(TestCase.java:129)
at junit.framework.TestSuite.runTest(TestSuite.java:252)
at junit.framework.TestSuite.run(TestSuite.java:247)
at
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:86)
at
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:236)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:134)
at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:622)
at
org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at
org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at
org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:103)
at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74)
NestedThrowablesStackTrace:
javax.jdo.JDODataStoreException: Delete request failed: DELETE FROM PROJECT
WHERE ID = ?
at
org.jpox.store.rdbms.request.DeleteRequest.execute(DeleteRequest.java:288)
at org.jpox.store.rdbms.table.ClassTable.delete(ClassTable.java:2611)
at org.jpox.store.StoreManager.delete(StoreManager.java:1025)
at
org.jpox.state.StateManagerImpl.internalDeletePersistent(StateManagerImpl.java:4468)
at
org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4423)
at
org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1489)
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1532)
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1514)
at
org.jpox.store.rdbms.scostore.FKListStore.clear(FKListStore.java:1137)
at
org.jpox.store.mapping.CollectionMapping.deleteDependent(CollectionMapping.java:334)
at
org.jpox.store.rdbms.table.ClassTable.deleteDependent(ClassTable.java:2651)
at org.jpox.store.StoreManager.deleteDependent(StoreManager.java:1076)
at
org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4405)
at
org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1489)
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1532)
at
org.jpox.store.rdbms.query.JDOQLQuery.performDeletePersistentAll(JDOQLQuery.java:687)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1120)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1075)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1049)
at
org.codehaus.plexus.jdo.PlexusJdoUtils.removeAll(PlexusJdoUtils.java:444)
at
org.apache.continuum.dao.DaoUtilsImpl.eraseDatabase(DaoUtilsImpl.java:87)
at
org.apache.maven.continuum.AbstractContinuumTest.tearDown(AbstractContinuumTest.java:106)
at junit.framework.TestCase.runBare(TestCase.java:146)
at junit.framework.TestResult$1.protect(TestResult.java:122)
at junit.framework.TestResult.runProtected(TestResult.java:142)
at junit.framework.TestResult.run(TestResult.java:125)
at junit.framework.TestCase.run(TestCase.java:129)
at junit.framework.TestSuite.runTest(TestSuite.java:252)
at junit.framework.TestSuite.run(TestSuite.java:247)
at
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:86)
at
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:236)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:134)
at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:622)
at
org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at
org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at
org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:103)
at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74)
NestedThrowablesStackTrace:
java.sql.SQLException: Integrity constraint violation BUILDRESULT_FK1 table:
BUILDRESULT in statement [DELETE FROM PROJECT WHERE ID = ?]
at org.hsqldb.jdbc.Util.throwError(Unknown Source)
at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source)
at
org.jpox.store.rdbms.ParamLoggingPreparedStatement.executeUpdate(ParamLoggingPreparedStatement.java:359)
at
org.jpox.store.rdbms.RDBMSManager.executeStatementUpdate(RDBMSManager.java:575)
at
org.jpox.store.rdbms.request.DeleteRequest.execute(DeleteRequest.java:274)
at org.jpox.store.rdbms.table.ClassTable.delete(ClassTable.java:2611)
at org.jpox.store.StoreManager.delete(StoreManager.java:1025)
at
org.jpox.state.StateManagerImpl.internalDeletePersistent(StateManagerImpl.java:4468)
at
org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4423)
at
org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1489)
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1532)
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1514)
at
org.jpox.store.rdbms.scostore.FKListStore.clear(FKListStore.java:1137)
at
org.jpox.store.mapping.CollectionMapping.deleteDependent(CollectionMapping.java:334)
at
org.jpox.store.rdbms.table.ClassTable.deleteDependent(ClassTable.java:2651)
at org.jpox.store.StoreManager.deleteDependent(StoreManager.java:1076)
at
org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4405)
at
org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1489)
at
org.jpox.AbstractPersistenceManager.deletePersistentAll(AbstractPersistenceManager.java:1532)
at
org.jpox.store.rdbms.query.JDOQLQuery.performDeletePersistentAll(JDOQLQuery.java:687)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1120)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1075)
at org.jpox.store.query.Query.deletePersistentAll(Query.java:1049)
at
org.codehaus.plexus.jdo.PlexusJdoUtils.removeAll(PlexusJdoUtils.java:444)
at
org.apache.continuum.dao.DaoUtilsImpl.eraseDatabase(DaoUtilsImpl.java:87)
at
org.apache.maven.continuum.AbstractContinuumTest.tearDown(AbstractContinuumTest.java:106)
at junit.framework.TestCase.runBare(TestCase.java:146)
at junit.framework.TestResult$1.protect(TestResult.java:122)
at junit.framework.TestResult.runProtected(TestResult.java:142)
at junit.framework.TestResult.run(TestResult.java:125)
at junit.framework.TestCase.run(TestCase.java:129)
at junit.framework.TestSuite.runTest(TestSuite.java:252)
at junit.framework.TestSuite.run(TestSuite.java:247)
at
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:86)
at
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:236)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:134)
at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:622)
at
org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at
org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at
org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:103)
at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74){code}
The subsequent tests then fail during test initialization because they attempt
to create an ehcache-based cache that already exists:
{code}
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'urlFailureCache' defined in URL
[jar:file:/var/local/continuum/.m2/repository/org/apache/archiva/archiva-policies/1.2.1/archiva-policies-1.2.1.jar!/META-INF/spring-context.xml]:
Cannot resolve reference to bean 'cache#url-failures-cache' while setting
constructor argument; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'cache#url-failures-cache': Post-processing of FactoryBean's
singleton object failed; nested exception is
org.springframework.beans.factory.BeanInitializationException: Failed to invoke
plexus lifecycle Initializable.initialize on cache#url-failures-cache; nested
exception is
org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException:
A previous cache with name [url-failures-cache] exists.
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:334)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108)
at
org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:651)
at
org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:145)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1077)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:981)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:487)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)
at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:191)
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:636)
at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:934)
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
at
org.codehaus.plexus.spring.PlexusClassPathXmlApplicationContext.<init>(PlexusClassPathXmlApplicationContext.java:91)
at
org.codehaus.plexus.spring.PlexusInSpringTestCase.setUp(PlexusInSpringTestCase.java:45)
at
org.apache.maven.continuum.AbstractContinuumTest.setUp(AbstractContinuumTest.java:76)
at
org.apache.maven.continuum.notification.ContinuumNotificationDispatcherTest.setUp(ContinuumNotificationDispatcherTest.java:40)
at junit.framework.TestCase.runBare(TestCase.java:139)
at junit.framework.TestResult$1.protect(TestResult.java:122)
at junit.framework.TestResult.runProtected(TestResult.java:142)
at junit.framework.TestResult.run(TestResult.java:125)
at junit.framework.TestCase.run(TestCase.java:129)
at junit.framework.TestSuite.runTest(TestSuite.java:252)
at junit.framework.TestSuite.run(TestSuite.java:247)
at
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:86)
at
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:236)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:134)
at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:622)
at
org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at
org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at
org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:103)
at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74)
Caused by: org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'cache#url-failures-cache': Post-processing of
FactoryBean's singleton object failed; nested exception is
org.springframework.beans.factory.BeanInitializationException: Failed to invoke
plexus lifecycle Initializable.initialize on cache#url-failures-cache; nested
exception is
org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException:
A previous cache with name [url-failures-cache] exists.
at
org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:115)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1467)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:246)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:191)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
... 40 more
Caused by: org.springframework.beans.factory.BeanInitializationException:
Failed to invoke plexus lifecycle Initializable.initialize on
cache#url-failures-cache; nested exception is
org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException:
A previous cache with name [url-failures-cache] exists.
at
org.codehaus.plexus.spring.PlexusLifecycleBeanPostProcessor.postProcessAfterInitialization(PlexusLifecycleBeanPostProcessor.java:221)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:409)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.postProcessObjectFromFactoryBean(AbstractAutowireCapableBeanFactory.java:1657)
at
org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:112)
... 44 more
Caused by:
org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException:
A previous cache with name [url-failures-cache] exists.
at
org.codehaus.plexus.cache.ehcache.EhcacheCache.initialize(EhcacheCache.java:237)
at
org.codehaus.plexus.spring.PlexusLifecycleBeanPostProcessor.postProcessAfterInitialization(PlexusLifecycleBeanPostProcessor.java:217)
... 47 more
{code}
--
This message was sent by Atlassian JIRA
(v6.1.6#6162)