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

Remote call on CLI channel from [ip] failed

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Component/s: cli, groovy-plugin
    • Labels:
      None
    • Environment:
      Jenkins 1.446, Linux CentOS
    • Similar Issues:

      Description

      I've had a KillStuckPolling.groovy job running for about 6 months without problems, but on January 4th it stopped working with the below stack trace. This matches with the release of Jenkins 1.446, which is currently installed. I have tried to restart the server without any effect.

      Killing all stuck SCM polls using ~/bin/KillStuckPolling.groovy
      log4j:WARN No appenders could be found for logger (org.apache.commons.beanutils.converters.BooleanConverter).
      log4j:WARN Please initialize the log4j system properly.
      java.io.IOException: Remote call on CLI channel from /[ip] failed
      	at hudson.remoting.Channel.call(Channel.java:690)
      	at hudson.cli.GroovyCommand.loadScript(GroovyCommand.java:106)
      	at hudson.cli.GroovyCommand.run(GroovyCommand.java:93)
      	at hudson.cli.CLICommand.main(CLICommand.java:205)
      	at hudson.cli.CliManagerImpl.main(CliManagerImpl.java:66)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      	at java.lang.reflect.Method.invoke(Unknown Source)
      	at hudson.remoting.RemoteInvocationHandler$RPCRequest.perform(RemoteInvocationHandler.java:274)
      	at hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:255)
      	at hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:215)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:118)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
      	at hudson.remoting.Request$2.run(Request.java:287)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
      	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
      	at java.util.concurrent.FutureTask.run(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      	at java.lang.Thread.run(Unknown Source)
      Caused by: java.lang.ExceptionInInitializerError
      	at java.io.ObjectStreamClass.hasStaticInitializer(Native Method)
      	at java.io.ObjectStreamClass.computeDefaultSUID(Unknown Source)
      	at java.io.ObjectStreamClass.access$100(Unknown Source)
      	at java.io.ObjectStreamClass$1.run(Unknown Source)
      	at java.security.AccessController.doPrivileged(Native Method)
      	at java.io.ObjectStreamClass.getSerialVersionUID(Unknown Source)
      	at java.io.ObjectStreamClass.initNonProxy(Unknown Source)
      	at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
      	at java.io.ObjectInputStream.readClassDesc(Unknown Source)
      	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
      	at java.io.ObjectInputStream.readObject0(Unknown Source)
      	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
      	at java.io.ObjectInputStream.readSerialData(Unknown Source)
      	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
      	at java.io.ObjectInputStream.readObject0(Unknown Source)
      	at java.io.ObjectInputStream.readObject(Unknown Source)
      	at hudson.remoting.UserRequest.deserialize(UserRequest.java:182)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:98)
      	... 8 more
      Caused by: java.lang.NullPointerException
      	at hudson.cli.CLICommand.<clinit>(CLICommand.java:448)
      	... 26 more
      Build step 'Execute shell' marked build as failure
      

      The groovy script is as follows:

      KillStuckPolling.groovy
       Thread.getAllStackTraces().keySet().each() { 
         item ->
         println "Checking item" + item.getName();
         if (item.getName().contains("SCM polling") && item.getName().contains("waiting for hudson.remoting")) { 
           println "   Interrupting thread " + item.getId(); 
           item.interrupt() 
         }
       }
      

      And the bash script used to start it is as follows

      KillStuckPolling.sh
      #!/bin/bash -e
      echo "## Kills stuck polling jobs on Jenkins"
      
      if [ -z "$JENKINS_URL" ]; then
        echo "ERROR: This script must be run on Jenkins. It cannot be run manually"
        exit 1
      fi
      
      echo "Getting latest Jenkins CLI from ${JENKINS_URL}"
      if [ -w jenkins-cli.jar ]; then
        rm jenkins-cli.jar
      fi
      wget ${JENKINS_URL}jnlpJars/jenkins-cli.jar
      echo "Killing all stuck SCM polls using ~/bin/KillStuckPolling.groovy"
      java -jar jenkins-cli.jar -s ${JENKINS_URL}/ groovy ~/bin/KillStuckPolling.groovy
      

        Attachments

          Issue Links

            Activity

            Hide
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #1540
            [FIXED JENKINS-12302] Refactor anonymout class for loading groovy script into separate class as static block (due to inheritance of outer class from CLICommand) initialization leads to NPE (namely in Jenkins.getInstance Jenkins.getInstance().getPluginManager()) (Revision 7bdc1790166198de93b2b7c58286d9554be967b4)

            Result = SUCCESS
            Vojtech Juranek : 7bdc1790166198de93b2b7c58286d9554be967b4
            Files :

            • core/src/main/java/hudson/cli/GroovyCommand.java
            • core/src/main/java/hudson/cli/util/ScriptLoader.java
            Show
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #1540 [FIXED JENKINS-12302] Refactor anonymout class for loading groovy script into separate class as static block (due to inheritance of outer class from CLICommand) initialization leads to NPE (namely in Jenkins.getInstance Jenkins.getInstance().getPluginManager()) (Revision 7bdc1790166198de93b2b7c58286d9554be967b4) Result = SUCCESS Vojtech Juranek : 7bdc1790166198de93b2b7c58286d9554be967b4 Files : core/src/main/java/hudson/cli/GroovyCommand.java core/src/main/java/hudson/cli/util/ScriptLoader.java
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Vojtech Juranek
            Path:
            core/src/main/java/hudson/cli/GroovyCommand.java
            core/src/main/java/hudson/cli/util/ScriptLoader.java
            http://jenkins-ci.org/commit/jenkins/99385dcd1c8a2dc84d51133f1f4b06d4bc1cf653
            Log:
            [FIXED JENKINS-12302] Refactor anonymout class for loading groovy script into separate class as static block (due to inheritance of outer class from CLICommand) initialization leads to NPE (namely in Jenkins.getInstance Jenkins.getInstance().getPluginManager())
            (cherry picked from commit 7bdc1790166198de93b2b7c58286d9554be967b4)

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Vojtech Juranek Path: core/src/main/java/hudson/cli/GroovyCommand.java core/src/main/java/hudson/cli/util/ScriptLoader.java http://jenkins-ci.org/commit/jenkins/99385dcd1c8a2dc84d51133f1f4b06d4bc1cf653 Log: [FIXED JENKINS-12302] Refactor anonymout class for loading groovy script into separate class as static block (due to inheritance of outer class from CLICommand) initialization leads to NPE (namely in Jenkins.getInstance Jenkins.getInstance().getPluginManager()) (cherry picked from commit 7bdc1790166198de93b2b7c58286d9554be967b4)
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Kohsuke Kawaguchi
            Path:
            core/src/main/java/hudson/cli/CLICommand.java
            http://jenkins-ci.org/commit/jenkins/7110ddb7d2a2f141a6887ffe352526db91046867
            Log:
            JENKINS-12302

            Make sure that we don't require Jenkins.getInstance() on CLICommand, since it can run on slaves.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: core/src/main/java/hudson/cli/CLICommand.java http://jenkins-ci.org/commit/jenkins/7110ddb7d2a2f141a6887ffe352526db91046867 Log: JENKINS-12302 Make sure that we don't require Jenkins.getInstance() on CLICommand, since it can run on slaves.
            Hide
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #1605
            JENKINS-12302 (Revision 7110ddb7d2a2f141a6887ffe352526db91046867)

            Result = SUCCESS
            Kohsuke Kawaguchi : 7110ddb7d2a2f141a6887ffe352526db91046867
            Files :

            • core/src/main/java/hudson/cli/CLICommand.java
            Show
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #1605 JENKINS-12302 (Revision 7110ddb7d2a2f141a6887ffe352526db91046867) Result = SUCCESS Kohsuke Kawaguchi : 7110ddb7d2a2f141a6887ffe352526db91046867 Files : core/src/main/java/hudson/cli/CLICommand.java
            Hide
            dogfood dogfood added a comment -

            Integrated in jenkins_ui-changes_branch #21
            JENKINS-12302 (Revision 7110ddb7d2a2f141a6887ffe352526db91046867)

            Result = SUCCESS
            Kohsuke Kawaguchi : 7110ddb7d2a2f141a6887ffe352526db91046867
            Files :

            • core/src/main/java/hudson/cli/CLICommand.java
            Show
            dogfood dogfood added a comment - Integrated in jenkins_ui-changes_branch #21 JENKINS-12302 (Revision 7110ddb7d2a2f141a6887ffe352526db91046867) Result = SUCCESS Kohsuke Kawaguchi : 7110ddb7d2a2f141a6887ffe352526db91046867 Files : core/src/main/java/hudson/cli/CLICommand.java

              People

              • Assignee:
                vjuranek vjuranek
                Reporter:
                mabahj Markus
              • Votes:
                6 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: