-
Type: Bug
-
Status: Open
-
Priority: Minor
-
Resolution: Unresolved
-
Affects Version/s: 7.10-HF18
-
Fix Version/s: QualifiedToSchedule
-
Component/s: Tests
Description:
Sometimes, Jenkins builds fail because of the following error:
java.lang.IllegalArgumentException: /tmp/schemas does not exist at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1637) at org.nuxeo.ecm.core.schema.SchemaManagerImpl.clearSchemaDir(SchemaManagerImpl.java:130)
Example:
This build on 7.10: https://qa.nuxeo.org/jenkins/view/TestAndPush/job/TestAndPush/job/ondemand-testandpush-egiuly/43/testReport/junit/org.nuxeo.ecm.platform.template.tests/TestTemplateSourceTypeBindings/testTypeBindingAndOverride/
StorageConfiguration: Deploying JDBC using DatabaseH2 StorageConfiguration: Deploying a VCS repository 18:09:55,554 ERROR [RegistrationInfoImpl] Component service:org.nuxeo.ecm.core.schema.TypeService notification of application started failed. java.lang.IllegalArgumentException: /tmp/schemas does not exist at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1637) at org.nuxeo.ecm.core.schema.SchemaManagerImpl.clearSchemaDir(SchemaManagerImpl.java:130) at org.nuxeo.ecm.core.schema.SchemaManagerImpl.recomputeSchemas(SchemaManagerImpl.java:301) at org.nuxeo.ecm.core.schema.SchemaManagerImpl.recompute(SchemaManagerImpl.java:271) at org.nuxeo.ecm.core.schema.SchemaManagerImpl.checkDirty(SchemaManagerImpl.java:261) at org.nuxeo.ecm.core.schema.SchemaManagerImpl.flushPendingsRegistration(SchemaManagerImpl.java:762) at org.nuxeo.ecm.core.schema.TypeService.applicationStarted(TypeService.java:152) at org.nuxeo.runtime.model.impl.RegistrationInfoImpl.notifyApplicationStarted(RegistrationInfoImpl.java:325) at org.nuxeo.runtime.osgi.OSGiRuntimeService.notifyComponentsOnStarted(OSGiRuntimeService.java:482) at org.nuxeo.runtime.osgi.OSGiRuntimeService.fireApplicationStarted(OSGiRuntimeService.java:518) at org.nuxeo.runtime.api.ServicePassivator$Waiter.proceed(ServicePassivator.java:413) at org.nuxeo.runtime.api.ServicePassivator.proceed(ServicePassivator.java:81) at org.nuxeo.runtime.osgi.OSGiRuntimeService.frameworkEvent(OSGiRuntimeService.java:530) at org.nuxeo.osgi.OSGiAdapter.fireFrameworkEvent(OSGiAdapter.java:232) at org.nuxeo.runtime.test.NXRuntimeTestCase.fireFrameworkStarted(NXRuntimeTestCase.java:191) at org.nuxeo.runtime.test.runner.RuntimeFeature.beforeRun(RuntimeFeature.java:153) at org.nuxeo.runtime.test.runner.FeaturesRunner$2.call(FeaturesRunner.java:157) at org.nuxeo.runtime.test.runner.FeaturesLoader.apply(FeaturesLoader.java:109) at org.nuxeo.runtime.test.runner.FeaturesLoader.apply(FeaturesLoader.java:96) at org.nuxeo.runtime.test.runner.FeaturesRunner.beforeRun(FeaturesRunner.java:153) at org.nuxeo.runtime.test.runner.FeaturesRunner$BeforeClassStatement.evaluate(FeaturesRunner.java:265) at org.junit.rules.RunRules.evaluate(RunRules.java:20) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.junit.runners.Suite.runChild(Suite.java:127) at org.junit.runners.Suite.runChild(Suite.java:26) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.junit.runner.JUnitCore.run(JUnitCore.java:160) at org.junit.runner.JUnitCore.run(JUnitCore.java:138) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:113) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeEager(JUnitCoreWrapper.java:85) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:54) at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:134) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) 18:09:55,557 ERROR [RegistrationInfoImpl] Component service:org.nuxeo.ecm.core.repository.RepositoryServiceComponent notification of application started failed. java.lang.NullPointerException at org.nuxeo.ecm.core.storage.FulltextConfiguration.<init>(FulltextConfiguration.java:109) at org.nuxeo.ecm.core.storage.sql.Model.<init>(Model.java:489) at org.nuxeo.ecm.core.storage.sql.RepositoryImpl.initRepository(RepositoryImpl.java:270) at org.nuxeo.ecm.core.storage.sql.RepositoryImpl.getConnection(RepositoryImpl.java:241) at org.nuxeo.ecm.core.storage.sql.ra.ManagedConnectionFactoryImpl.initialize(ManagedConnectionFactoryImpl.java:270) at org.nuxeo.ecm.core.storage.sql.ra.ManagedConnectionFactoryImpl.createManagedConnection(ManagedConnectionFactoryImpl.java:177) at org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.getConnection(MCFConnectionInterceptor.java:49) at org.apache.geronimo.connector.outbound.XAResourceInsertionInterceptor.getConnection(XAResourceInsertionInterceptor.java:41) at org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalGetConnection(SinglePoolMatchAllConnectionInterceptor.java:88) at org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.getConnection(AbstractSinglePoolConnectionInterceptor.java:80) at org.nuxeo.runtime.jtajca.NuxeoPool$1.getConnection(NuxeoPool.java:66) at org.apache.geronimo.connector.outbound.ThreadLocalCachingConnectionInterceptor.getConnection(ThreadLocalCachingConnectionInterceptor.java:70) at org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.getConnection(TransactionEnlistingInterceptor.java:49) at org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.getConnection(TransactionCachingInterceptor.java:109) at org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.getConnection(ConnectionHandleInterceptor.java:43) at org.apache.geronimo.connector.outbound.TCCLInterceptor.getConnection(TCCLInterceptor.java:39) at org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:66) at org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:77) at org.nuxeo.runtime.jtajca.NuxeoContainer$ConnectionManagerWrapper.allocateConnection(NuxeoContainer.java:739) at org.nuxeo.ecm.core.storage.sql.ra.ConnectionFactoryImpl.getConnection(ConnectionFactoryImpl.java:96) at org.nuxeo.ecm.core.storage.sql.ra.ConnectionFactoryImpl.getSession(ConnectionFactoryImpl.java:159) at org.nuxeo.ecm.core.repository.RepositoryService.getSession(RepositoryService.java:230) at org.nuxeo.ecm.core.api.local.LocalSession.createSession(LocalSession.java:117) at org.nuxeo.ecm.core.api.local.LocalSession.connect(LocalSession.java:83) at org.nuxeo.ecm.core.api.CoreInstance.acquireCoreSession(CoreInstance.java:184) at org.nuxeo.ecm.core.api.CoreInstance.openCoreSession(CoreInstance.java:179) at org.nuxeo.ecm.core.api.CoreInstance.openCoreSession(CoreInstance.java:79) at org.nuxeo.ecm.core.api.UnrestrictedSessionRunner.runUnrestricted(UnrestrictedSessionRunner.java:126) at org.nuxeo.ecm.core.repository.RepositoryService.openRepository(RepositoryService.java:145) at org.nuxeo.ecm.core.repository.RepositoryService.applicationStarted(RepositoryService.java:90) at org.nuxeo.runtime.model.impl.RegistrationInfoImpl.notifyApplicationStarted(RegistrationInfoImpl.java:325) at org.nuxeo.runtime.osgi.OSGiRuntimeService.notifyComponentsOnStarted(OSGiRuntimeService.java:482) at org.nuxeo.runtime.osgi.OSGiRuntimeService.fireApplicationStarted(OSGiRuntimeService.java:518) at org.nuxeo.runtime.api.ServicePassivator$Waiter.proceed(ServicePassivator.java:413) at org.nuxeo.runtime.api.ServicePassivator.proceed(ServicePassivator.java:81) at org.nuxeo.runtime.osgi.OSGiRuntimeService.frameworkEvent(OSGiRuntimeService.java:530) at org.nuxeo.osgi.OSGiAdapter.fireFrameworkEvent(OSGiAdapter.java:232) at org.nuxeo.runtime.test.NXRuntimeTestCase.fireFrameworkStarted(NXRuntimeTestCase.java:191) at org.nuxeo.runtime.test.runner.RuntimeFeature.beforeRun(RuntimeFeature.java:153) at org.nuxeo.runtime.test.runner.FeaturesRunner$2.call(FeaturesRunner.java:157) at org.nuxeo.runtime.test.runner.FeaturesLoader.apply(FeaturesLoader.java:109) at org.nuxeo.runtime.test.runner.FeaturesLoader.apply(FeaturesLoader.java:96) at org.nuxeo.runtime.test.runner.FeaturesRunner.beforeRun(FeaturesRunner.java:153) at org.nuxeo.runtime.test.runner.FeaturesRunner$BeforeClassStatement.evaluate(FeaturesRunner.java:265) at org.junit.rules.RunRules.evaluate(RunRules.java:20) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.junit.runners.Suite.runChild(Suite.java:127) at org.junit.runners.Suite.runChild(Suite.java:26) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.junit.runner.JUnitCore.run(JUnitCore.java:160) at org.junit.runner.JUnitCore.run(JUnitCore.java:138) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:113) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeEager(JUnitCoreWrapper.java:85) at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:54) at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:134) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) 18:09:55,561 ERROR [OSGiRuntimeService] Nuxeo Platform Started ====================================================================== = Component Loading Status: Pending: 2 / Unstarted: 2 / Total: 79 * service:org.nuxeo.ecm.platform.templates.convert.plugins requires [service:org.nuxeo.ecm.platform.convert.plugins] * service:org.nuxeo.platform.TemplateSources.rendition.contrib requires [service:org.nuxeo.ecm.platform.rendition.contrib] - service:org.nuxeo.ecm.core.schema.TypeService - service:org.nuxeo.ecm.core.repository.RepositoryServiceComponent ======================================================================
Useful links:
SchemaManagerImpl in 7.10:
schemaDir = new File(System.getProperty("java.io.tmpdir"), SCHEMAS_DIR_NAME);
SchemaManagerImpl in master:
schemaDir = new File(Environment.getDefault().getTemp(), SCHEMAS_DIR_NAME);