Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-5068

File operations fail on remote host with Duplicate Code Scanner

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Major Major
    • plugin-proposals
    • None

      I'm running a cpd analysis on a remote (SSH) slave. The cpd command seems to work, but the build fails when the DRY parser tries to access the remote file.

      There are several of these 'remote file operation failed' bugs filed, but based on the stack trace below, maybe this is a problem with the DRY plugin.

      [DRY] Collecting duplicate code analysis files...
      FATAL: remote file operation failed
      hudson.util.IOException2: remote file operation failed
      at hudson.FilePath.act(FilePath.java:677)
      at hudson.FilePath.act(FilePath.java:665)
      at hudson.plugins.dry.DryPublisher.perform(DryPublisher.java:103)
      at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:140)
      at hudson.tasks.BuildStepMonitor$2.perform(BuildStepMonitor.java:27)
      at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:516)
      at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:502)
      at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:490)
      at hudson.model.Build$RunnerImpl.post2(Build.java:181)
      at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:474)
      at hudson.model.Run.run(Run.java:1199)
      at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      at hudson.model.ResourceController.execute(ResourceController.java:88)
      at hudson.model.Executor.run(Executor.java:123)
      Caused by: java.io.IOException: Remote call failed
      at hudson.remoting.Channel.call(Channel.java:552)
      at hudson.FilePath.act(FilePath.java:672)
      ... 13 more
      Caused by: java.lang.ClassNotFoundException: Failed to deserialize the Callable object. Perhaps you needed to implement DelegatingCallable?
      at hudson.remoting.UserRequest.perform(UserRequest.java:90)
      at hudson.remoting.UserRequest.perform(UserRequest.java:48)
      at hudson.remoting.Request$2.run(Request.java:270)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
      at java.util.concurrent.FutureTask.run(FutureTask.java:166)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
      at java.lang.Thread.run(Thread.java:636)
      Caused by: java.lang.ClassNotFoundException: hudson.plugins.dry.parser.DuplicationParserRegistry
      at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
      at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
      at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336)
      at java.lang.Class.forName0(Native Method)
      at java.lang.Class.forName(Class.java:264)
      at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:621)
      at hudson.remoting.ObjectInputStreamEx.resolveClass(ObjectInputStreamEx.java:50)
      at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1592)
      at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1513)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1749)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1346)
      at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1963)
      at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1887)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1770)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1346)
      at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1963)
      at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1887)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1770)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1346)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:368)
      at hudson.remoting.UserRequest.deserialize(UserRequest.java:168)
      at hudson.remoting.UserRequest.perform(UserRequest.java:88)
      ... 8 more

          [JENKINS-5068] File operations fail on remote host with Duplicate Code Scanner

          dbacher1 added a comment -

          The Violations plugin is able to parse the CPD output. For my purposes, that's a reasonable workaround.

          dbacher1 added a comment - The Violations plugin is able to parse the CPD output. For my purposes, that's a reasonable workaround.

          dbacher1 added a comment -

          I'm seeing the same errors with the Warnings plugin. Is it possible that this issue is affecting all of the analysis-core plugins?

          dbacher1 added a comment - I'm seeing the same errors with the Warnings plugin. Is it possible that this issue is affecting all of the analysis-core plugins?

            Unassigned Unassigned
            dbacher1 dbacher1
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: