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

CCE: cannot assign instance of StreamBuildListener to field MercurialSCM$1.val$listener of type BuildListener

    Details

    • Similar Issues:

      Description

      We frequently - but not usually - get build failures of the form:

      See <http://deadlock.netbeans.org/hudson/job/push-core-main/20032/>
      ------------------------------------------
      Started by timer
      Building remotely on Push-to-Silver-Node
      FATAL: cannot assign instance of hudson.model.StreamBuildListener to field hudson.plugins.mercurial.MercurialSCM$1.val$listener of type hudson.model.BuildListener in instance of hudson.plugins.mercurial.MercurialSCM$1
      java.lang.ClassCastException: cannot assign instance of hudson.model.StreamBuildListener to field hudson.plugins.mercurial.MercurialSCM$1.val$listener of type hudson.model.BuildListener in instance of hudson.plugins.mercurial.MercurialSCM$1
      	at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2039)
      	at java.io.ObjectStreamClass.setObjFieldValues(ObjectStreamClass.java:1212)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1952)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
      	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
      	at hudson.remoting.UserRequest.deserialize(UserRequest.java:178)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:98)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
      	at hudson.remoting.Request$2.run(Request.java:283)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
      	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      	at java.lang.Thread.run(Thread.java:662)
      

      The job config in this case is

      <scm class="hudson.plugins.mercurial.MercurialSCM">
        <installation>default Mercurial with caching</installation>
        <source>http://hg.netbeans.org/main-silver/</source>
        <modules></modules>
        <clean>false</clean>
        <forest>false</forest>
        <browser class="hudson.plugins.mercurial.browser.HgWeb">
          <url>http://hg.netbeans.org/main-silver/</url>
        </browser>
      </scm>
      

      but other jobs also fail as well. Possibly a problem with unserializable anonymous classes being passed around in remoting.

        Attachments

          Activity

          Hide
          jglick Jesse Glick added a comment -

          Seems the checkout method makes an anonymous FileCallable<Boolean>. Was apparently fixed in ef5b34289131b737a4329fc6544015e79be01c96. Should be fixed in 1.38 version of the plugin.

          Show
          jglick Jesse Glick added a comment - Seems the checkout method makes an anonymous FileCallable<Boolean> . Was apparently fixed in ef5b34289131b737a4329fc6544015e79be01c96. Should be fixed in 1.38 version of the plugin.

            People

            • Assignee:
              jglick Jesse Glick
              Reporter:
              jglick Jesse Glick
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: