Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-21287

Fix random failure on "/tmp/schemas does not exist" from SchemaManagerImpl in tests

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 7.10-HF18
    • Fix Version/s: QualifiedToSchedule
    • Component/s: Tests

      Description

      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);

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: