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

archive artifacts hangs on ia64 slave due to JNA initialization error

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Blocker Blocker
    • core
    • jenkins core 1.483 - 1.488
      ia64 slave (Red Hat Enterprise Linux)

      The archiving artifacts didn't work before jenkins 1.486 due to https://issues.jenkins-ci.org/browse/JENKINS-13202 I believe. The exception was the same.

      But since ~1.486 the build just hangs on artifacts archiving, and only the following can be found in logs:
      ===========
      INFO: test-ia64 #6 main build action completed: SUCCESS
      Oct 31, 2012 2:10:04 PM hudson.remoting.SynchronousCommandTransport$ReaderThread run
      SEVERE: I/O error in channel ca-build26
      java.io.IOException: Unexpected termination of the channel
      at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:50)
      Caused by: java.io.EOFException
      at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2553)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1296)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
      at hudson.remoting.Command.readFrom(Command.java:90)
      at hudson.remoting.ClassicCommandTransport.read(ClassicCommandTransport.java:59)
      at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)
      ==================

      The build is marked as successful after manually build abortion, and an exception can be seen in the console.

      The job is simple: 'echo TEST > ${WORKSPACE}/1.txt', and archive 1.txt then.
      thead dump from master and slave is attached

        1. master.txt
          36 kB
        2. slave.txt
          4 kB

          [JENKINS-15682] archive artifacts hangs on ia64 slave due to JNA initialization error

          Oliver Bock added a comment - - edited

          @jglick Agreed. I'd love to use this workaround on OS X 10.4 as well. This (and/or the related issue) is a long standing issue that's really precluding us from doing actual CI right now.

          Oliver Bock added a comment - - edited @jglick Agreed. I'd love to use this workaround on OS X 10.4 as well. This (and/or the related issue ) is a long standing issue that's really precluding us from doing actual CI right now.

          Dave Hunt added a comment -

          We had a similar issue to this (but with Ubuntu slaves) that was resolved by switching to Oracle's JDK from Open JDK.

          Dave Hunt added a comment - We had a similar issue to this (but with Ubuntu slaves) that was resolved by switching to Oracle's JDK from Open JDK.

          We have the similar problem on Windows Server.
          Can you tell in which Jenkins version will the fix be available?

          Valentin Baranov added a comment - We have the similar problem on Windows Server. Can you tell in which Jenkins version will the fix be available?

          Matthias Kraft added a comment - - edited

          We are observing this issue with Jenkins 1.480.3 on RedHat Enterprise Linux Server and SUSE Linux Enterprise Server running on a Mainframe (s390x) using current IBM JDK 7 SR4.

          A very interesting observation is that on AIX and HP-UX - which also don't have an Oracle JDK - a message appears: "Failed to load native POSIX impl; falling back on Java impl. Unsupported OS." - and everything seems to work out.

          Matthias Kraft added a comment - - edited We are observing this issue with Jenkins 1.480.3 on RedHat Enterprise Linux Server and SUSE Linux Enterprise Server running on a Mainframe (s390x) using current IBM JDK 7 SR4. A very interesting observation is that on AIX and HP-UX - which also don't have an Oracle JDK - a message appears: "Failed to load native POSIX impl; falling back on Java impl. Unsupported OS." - and everything seems to work out.

          A possible solution might be lined out in these comments: http://jira.codehaus.org/browse/JRUBY-6712

          Matthias Kraft added a comment - A possible solution might be lined out in these comments: http://jira.codehaus.org/browse/JRUBY-6712

          Jesse Glick added a comment -

          @makr: newer versions of Jenkins on Java 7+ will not exhibit this error because they use a different code path.

          By the way anyone using proprietary or unusual platforms should not expect that Jenkins core developers will be able to reproduce their problems. Debug it yourself and file a pull request if you want a prompt fix.

          Jesse Glick added a comment - @makr: newer versions of Jenkins on Java 7+ will not exhibit this error because they use a different code path. By the way anyone using proprietary or unusual platforms should not expect that Jenkins core developers will be able to reproduce their problems. Debug it yourself and file a pull request if you want a prompt fix.

          Oliver Bock added a comment -

          By the way anyone using proprietary or unusual platforms should not expect that Jenkins core developers will be able to reproduce their problems. Debug it yourself and file a pull request if you want a prompt fix.

          @jglick: What if we'd provide access to an affected machine, either via ssh or direct access? Would some core developer be willing to tackle the problem in that case?

          Oliver Bock added a comment - By the way anyone using proprietary or unusual platforms should not expect that Jenkins core developers will be able to reproduce their problems. Debug it yourself and file a pull request if you want a prompt fix. @jglick: What if we'd provide access to an affected machine, either via ssh or direct access? Would some core developer be willing to tackle the problem in that case?

          Jesse Glick added a comment -

          @brevilo: yes this is a possibility. I cannot personally commit to finding the time for it at the moment, I am afraid.

          Jesse Glick added a comment - @brevilo: yes this is a possibility. I cannot personally commit to finding the time for it at the moment, I am afraid.

          Donald Morton added a comment -

          Let me see if I understand the flow of logic. It is trying to resolve a symlink, correct? Util.java -> resolveSymlink.

          First, it tries calling 'java.nio.file.Files' in Java7. If that isn't available, it tries to load this library:

          https://kenai.com/projects/jna-posix/sources/mercurial/show/src/org/jruby/ext/posix?rev=59

          If that fails, it tries to load this library:

          https://github.com/jnr/jnr-posix/tree/master/src/main/java/jnr/posix

          All three fail, possibly due to using a non-Oracle Java runtime? The key section in the logs being:

          java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
          at org.jruby.ext.posix.POSIXFactory.loadLibC(POSIXFactory.java:96)

          I suppose that makes this a duplicate of JENKINS-13202?

          Donald Morton added a comment - Let me see if I understand the flow of logic. It is trying to resolve a symlink, correct? Util.java -> resolveSymlink. First, it tries calling 'java.nio.file.Files' in Java7. If that isn't available, it tries to load this library: https://kenai.com/projects/jna-posix/sources/mercurial/show/src/org/jruby/ext/posix?rev=59 If that fails, it tries to load this library: https://github.com/jnr/jnr-posix/tree/master/src/main/java/jnr/posix All three fail, possibly due to using a non-Oracle Java runtime? The key section in the logs being: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native at org.jruby.ext.posix.POSIXFactory.loadLibC(POSIXFactory.java:96) I suppose that makes this a duplicate of JENKINS-13202 ?

          Craig Rodrigues added a comment - - edited

          Jenkins has been updated to use JNA 4.1: JENKINS-24521
          Please try again, since this fixes many native library issues.
          The fix will be in Jenkins 1.586 and higher.

          Craig Rodrigues added a comment - - edited Jenkins has been updated to use JNA 4.1: JENKINS-24521 Please try again, since this fixes many native library issues. The fix will be in Jenkins 1.586 and higher.

            kohsuke Kohsuke Kawaguchi
            nnau Natalia Naumova
            Votes:
            9 Vote for this issue
            Watchers:
            16 Start watching this issue

              Created:
              Updated:
              Resolved: