Uploaded image for project: 'Nuxeo ECM Build/Test Environment'
  1. Nuxeo ECM Build/Test Environment
  2. NXBT-3721

Fix javassist.NotFoundException in Nuxeo builds

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Studio Maven Plugin
    • Tags:
    • Team:
      PLATFORM
    • Sprint:
      nxplatform #87
    • Story Points:
      3

      Description

      We often have the kind of error below in nuxeo builds:

      01:46:15  BUILD FAILED - at 4/28/23, 11:46 PM
      01:46:15  /home/jenkins/workspace/nuxeo_lts_nuxeo_2021/packages/src/main/assemble/assembly.xml:122: java.lang.RuntimeException: javassist.NotFoundException: org.nuxeo.importer.stream.automation.RandomBlobProducers
      01:46:15  	at org.nuxeo.studio.components.common.serializer.adapter.automation.OperationReader.<init>(OperationReader.java:88)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.adapter.automation.OperationReader.read(OperationReader.java:101)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.adapter.OperationAdapter.adapt(OperationAdapter.java:30)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.adapter.OperationAdapter.adapt(OperationAdapter.java:26)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.JacksonConverter.serialize(JacksonConverter.java:124)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.StudioSerializer.serialize(StudioSerializer.java:90)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.StudioSerializer.lambda$serializeDescriptors$1(StudioSerializer.java:83)
      01:46:15  	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
      01:46:15  	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)
      01:46:15  	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
      01:46:15  	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
      01:46:15  	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
      01:46:15  	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      01:46:15  	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.StudioSerializer.serializeDescriptors(StudioSerializer.java:85)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.StudioSerializer.serializeDescriptors(StudioSerializer.java:61)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.StudioSerializer.lambda$serializeInto$0(StudioSerializer.java:55)
      01:46:15  	at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
      01:46:15  	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.StudioSerializer.serializeInto(StudioSerializer.java:55)
      01:46:15  	at org.nuxeo.studio.components.common.publisher.Publisher$FilePublisher.publish(Publisher.java:78)
      01:46:15  	at org.nuxeo.studio.components.common.ContributionsExtractor.publish(ContributionsExtractor.java:45)
      01:46:15  	at org.nuxeo.build.ant.StudioExtraction.execute(StudioExtraction.java:63)
      01:46:15  	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
      01:46:15  	at jdk.internal.reflect.GeneratedMethodAccessor32.invoke(Unknown Source)
      01:46:15  	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      01:46:15  	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
      01:46:15  	at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
      01:46:15  	at org.apache.tools.ant.Task.perform(Task.java:348)
      01:46:15  	at org.apache.tools.ant.Target.execute(Target.java:435)
      01:46:15  	at org.apache.tools.ant.Target.performTasks(Target.java:456)
      01:46:15  	at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405)
      01:46:15  	at org.apache.tools.ant.Project.executeTarget(Project.java:1376)
      01:46:15  	at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
      01:46:15  	at org.nuxeo.build.ant.AntClient.run(AntClient.java:161)
      01:46:15  	at org.nuxeo.build.ant.AntClient.run(AntClient.java:119)
      01:46:15  	at org.nuxeo.build.maven.AntBuildMojo.execute(AntBuildMojo.java:256)
      01:46:15  	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
      01:46:15  	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210)
      01:46:15  	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156)
      01:46:15  	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148)
      01:46:15  	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
      01:46:15  	at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:202)
      01:46:15  	at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:198)
      01:46:15  	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      01:46:15  	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
      01:46:15  	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      01:46:15  	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
      01:46:15  	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
      01:46:15  	at java.base/java.lang.Thread.run(Thread.java:829)
      01:46:15  Caused by: javassist.NotFoundException: org.nuxeo.importer.stream.automation.RandomBlobProducers
      01:46:15  	at javassist.ClassPool.get(ClassPool.java:452)
      01:46:15  	at org.nuxeo.studio.components.common.serializer.adapter.automation.OperationReader.<init>(OperationReader.java:86)
      01:46:15  	... 49 more
      

      This is probably an issue in the Studio Maven Plugin which is not thread safe.

      For the record, the error above happens on a package build for the benchmark image, but can happen anywhere else, the command that produces the error was:

      mvn -B -nsu -Dnuxeo.skip.enforcer=true -Prelease -Pdistrib -T4C -pl :nuxeo-packages,:nuxeo-amazon-s3-package,:nuxeo-importer-package install
      

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated:
                  Resolved: