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

Jenkins restart fails on NonStop L series with Java 17

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • core
    • None
    • Jenkins 2.440.1 on NonStop L Series running Java 17

      Error on version 2.440.1: 

      2024-03-06 20:54:12.227+0000 [id=88]    INFO    jenkins.model.Jenkins#_cleanUpAwaitDisconnects: Waiting for node disconnection completion
      2024-03-06 20:54:12.227+0000 [id=88]    INFO    hudson.lifecycle.Lifecycle#onStatusUpdate: Jenkins stopped
      2024-03-06 20:54:12.228+0000 [id=88]    WARNING jenkins.model.Jenkins$20#run: Failed to restart Jenkins
      java.lang.ExceptionInInitializerError: Exception java.lang.UnsatisfiedLinkError: Native library (com/sun/jna/nonstop_kernel-x86-64/libjnidispatch.so) not found in resource path ([file:/home/jenkinsdir/.jenkins/war/WEB-INF/classes/, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/access-modifier-annotation-1.33.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/annotation-indexer-1.17.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/ant-1.10.14.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/ant-launcher-1.10.14.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/antlr4-runtime-4.13.1.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/args4j-2.33.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/asm-9.6.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/asm-analysis-9.6.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/asm-commons-9.6.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/asm-tree-9.6.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/asm-util-9.6.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/bridge-method-annotation-1.29.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/cli-2.426.3.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-beanutils-1.9.4.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-codec-1.16.0.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-collections-3.2.2.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-compress-1.24.0.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-discovery-0.5.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-fileupload-1.5.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-io-2.13.0.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-jelly-1.1-jenkins-20230713.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-jelly-tags-define-1.1-jenkins-20230713.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-jelly-tags-fmt-1.0.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-jelly-tags-xml-1.1.jar, file:/home/jenkinsdir/.jenkins/war/WEB-INF/lib/commons-jexl-1.1-jenkins-20
              at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:1059)
              at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:1015)
              at com.sun.jna.Native.<clinit>(Native.java:221)
              at hudson.util.jna.GNUCLibrary.<clinit>(GNUCLibrary.java:145)

       

      Environment: 

      /: uname -a
      NONSTOP_KERNEL tcmvns L23 08 NSV-I NSV NSV-I NonStop Kernel
      /: java --version
      openjdk 17.0.8 2023-07-18 LTS
      OpenJDK Runtime Environment (build 17.0.8+0-LTS)
      OpenJDK 64-Bit Server VM (build 17.0.8+0-LTS, mixed mode)
      /:

          [JENKINS-72833] Jenkins restart fails on NonStop L series with Java 17

          Mark Waite added a comment -

          I'm not aware of any Jenkins core maintainer that has access to a NonStop system. You'll likely need to perform your own diagnosis and debug in that environment to identify why it is not able to find that shared object file.

          Mark Waite added a comment - I'm not aware of any Jenkins core maintainer that has access to a NonStop system. You'll likely need to perform your own diagnosis and debug in that environment to identify why it is not able to find that shared object file.

          Basil Crow added a comment -

          JNA doesn't support this operating system, and we're using JNA to close all file descriptors and exec(3) the process for non-Windows systems. When running in systemd we instead call System.exit and let the service manager restart the process. I'm not familiar with this operating system or how services are managed there so I don't know what makes sense there. If you can implement something that makes sense in a way that doesn't cause regressions for Linux or Windows, we'd likely take the patch. There's probably no need to worry about this ticket, as you can just end the process and start it again to effect the same result.

          Basil Crow added a comment - JNA doesn't support this operating system, and we're using JNA to close all file descriptors and exec(3) the process for non-Windows systems. When running in systemd we instead call System.exit and let the service manager restart the process. I'm not familiar with this operating system or how services are managed there so I don't know what makes sense there. If you can implement something that makes sense in a way that doesn't cause regressions for Linux or Windows, we'd likely take the patch. There's probably no need to worry about this ticket, as you can just end the process and start it again to effect the same result.

          Basil Crow added a comment -

          As of https://github.com/jenkinsci/jenkins/pull/9025 we will no longer offer to restart in the UI if we cannot use JNA to call libc functions.

          Basil Crow added a comment - As of https://github.com/jenkinsci/jenkins/pull/9025 we will no longer offer to restart in the UI if we cannot use JNA to call libc functions.

            Unassigned Unassigned
            the4amfriend Shiva
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: