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

ghprb stuck all build triggers in SocketInputStream.socketRead0

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • ghprb-plugin
    • None

      I have just seen this in production:

      "jenkins.util.Timer [#10]" #346 daemon prio=5
       java.lang.Thread.State: RUNNABLE
       at java.net.SocketInputStream.socketRead0(Native Method)
       at java.net.SocketInputStream.read(SocketInputStream.java:129)
       at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:422)
       at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:460)
       at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:863)
       - locked <0x1c04e1e3> (a java.lang.Object)
       at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1188)
       - locked <0x48a0c74> (a java.lang.Object)
       at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1215)
       at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1199)
       at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:434)
       at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:166)
       at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1195)
       - locked <0xea9b657> (a sun.net.www.protocol.https.DelegateHttpsURLConnection)
       at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:379)
       at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:318)
       at org.kohsuke.github.Requester.parse(Requester.java:447)
       at org.kohsuke.github.Requester._to(Requester.java:224)
       at org.kohsuke.github.Requester.to(Requester.java:191)
       at org.kohsuke.github.GitHub.getRateLimit(GitHub.java:243)
       at org.jenkinsci.plugins.ghprb.GhprbRepository.initGhRepository(GhprbRepository.java:54)
       at org.jenkinsci.plugins.ghprb.GhprbRepository.check(GhprbRepository.java:76)
       at org.jenkinsci.plugins.ghprb.Ghprb.run(Ghprb.java:104)
       at org.jenkinsci.plugins.ghprb.GhprbTrigger.run(GhprbTrigger.java:165)
       at hudson.triggers.Trigger.checkTriggers(Trigger.java:266)
       at hudson.triggers.Trigger$Cron.doRun(Trigger.java:214)
       at hudson.triggers.SafeTimerTask.run(SafeTimerTask.java:54)
       at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
       at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
       at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
       at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
       at java.lang.Thread.run(Thread.java:662)
      
       Locked ownable synchronizers:
       - <0x6df9460b> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
      

      The thread does not respond to #interrupt() or #stop(). It seems to be the same problem as JENKINS-22245.

      Workaround

      The problem will be resolved by Jenkins restart. In case of urgency following groovy script kicks in a new trigger thread:

      def cron = new hudson.triggers.Trigger.Cron();
      jenkins.util.Timer.get().scheduleAtFixedRate(cron, 0, cron.getRecurrencePeriod(), java.util.concurrent.TimeUnit.MILLISECONDS);
      

            olivergondza Oliver Gondža
            olivergondza Oliver Gondža
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: