You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Seth Leger (JIRA)" <ji...@apache.org> on 2017/07/14 15:30:00 UTC

[jira] [Created] (KARAF-5251) Installing a feature containing JNA refreshes many system bundles

Seth Leger created KARAF-5251:
---------------------------------

             Summary: Installing a feature containing JNA refreshes many system bundles
                 Key: KARAF-5251
                 URL: https://issues.apache.org/jira/browse/KARAF-5251
             Project: Karaf
          Issue Type: Bug
          Components: karaf-shell
    Affects Versions: 4.1.0
            Reporter: Seth Leger
            Priority: Critical


jline 3.X that is included with the shell in Karaf 4.1+ has an optional dependency on the Java Native Access packages.
{noformat}
Import-Package = 
        com.sun.jna;resolution:=optional,
        com.sun.jna.ptr;resolution:=optional,
        com.sun.jna.win32;resolution:=optional,
...
{noformat}
This means that if you install a feature that includes the JNA bundles, it will refresh the jline bundle and all related bundles to satisfy this dependency. The group of related bundles that gets refreshed seems to be very large and can have a variety of negative side-effects:
- Terminating the current SSH session
- Terminating subsequent feature installations
- The {{shell.init.script}} seems to get interrupted as it refreshes, printing a lot of error messages:

{noformat}
karaf@root()> feature:install java-native-access 
Error executing command: java.lang.InterruptedException
        __ __                  ____      
       / //_/____ __________ _/ __/      
      / ,<  / __ `/ ___/ __ `/ /_        
     / /| |/ /_/ / /  / /_/ / __/        
    /_/ |_|\__,_/_/   \__,_/_/         

  Apache Karaf (4.1.1)

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown Karaf.

Error in initialization script: /root/Downloads/apache-karaf-4.1.1/etc/shell.init.script: Task java.util.concurrent.FutureTask@3c8bdda9 rejected from java.util.concurrent.ThreadPoolExecutor@7989445c[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
Error in initialization script: /root/Downloads/apache-karaf-4.1.1/etc/scripts/shell.completion.script: null
{noformat}

This problem can be reproduced by creating a feature containing the {{jna}} and {{jna-platform}} bundles and installing it on a fresh Karaf instance.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)