celix-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pepijn Noltes (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CELIX-400) Private libaries are loaded two times
Date Mon, 20 Feb 2017 14:33:44 GMT
Pepijn Noltes created CELIX-400:

             Summary: Private libaries are loaded two times
                 Key: CELIX-400
                 URL: https://issues.apache.org/jira/browse/CELIX-400
             Project: Celix
          Issue Type: Bug
            Reporter: Pepijn Noltes
            Priority: Minor

When creating a bundle, in most cases, the first private library (in the Private-Library manifest
statement) is the activator. 
Typically the activator library, if needed, loads all the required private libraries as dependencies.
This works because the activator library is created with a $ORIGIN rpath (or @loader_path
for OSX). 

At the moment all private library are stated in the Private-Library statement even if they
are already loaded as result of loading the activator bundle. Generally this is not a problem
and should not result in in extra use of memory, but if this is combined with shared libraries
which use .init or  __attribute__((constructor)) mechanismes this can have some undesired
side effect. 

This is currently the case when using Cpputest. This could be fixed by default not adding
all private libraries to the Private-Library manifest statement, e.g. make it an opt-in option

This message was sent by Atlassian JIRA

View raw message