karaf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Karen (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (KARAF-5693) Incomplete config.properties file in built assemblies
Date Mon, 21 May 2018 17:55:00 GMT

    [ https://issues.apache.org/jira/browse/KARAF-5693?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16482804#comment-16482804
] 

Karen edited comment on KARAF-5693 at 5/21/18 5:54 PM:
-------------------------------------------------------

The Builder.downloadLibraries() iterates through the set of assemblies/pom.xml libraries and
launches a download thread for each one. When one of the libraries download, the thread extracts
the "org.osgi.framework.system.packages.extra" value from the shared config Collection and
appended to locally. Then it saves the entire updated  "org.osgi.framework.system.packages.extra"
value back to the shared config Collection. The asynchronous nature of appending to the "org.osgi.framework.system.packages.extra"
explains why the list is usually different after each build. But, there doesn't appear to
be a synchronize on the shared config Collection when it is being updated locally by the asynchronous
threads.

[https://github.com/apache/karaf/blob/karaf-4.0.10/profile/src/main/java/org/apache/karaf/profile/assembly/Builder.java#L703]


was (Author: kdolan):
The Builder.downloadLibraries() iterates through the set of assemblies/pom.xml libraries and
launches a download thread for each one. When one of the libraries download, the thread extracts
the "org.osgi.framework.system.packages.extra" value from the shared config Collection and
appended to locally. Then it saves the entire updated  "org.osgi.framework.system.packages.extra"
value back to the shared config Collection. The asynchronous nature of appending to the "org.osgi.framework.system.packages.extra"
explains why the list is usually different after each build. But, there doesn't appear to
be a synchronize on the shared config Collection when it is being updated locally by a the
asynchronous thread.

https://github.com/apache/karaf/blob/karaf-4.0.10/profile/src/main/java/org/apache/karaf/profile/assembly/Builder.java#L703

> Incomplete config.properties file in built assemblies
> -----------------------------------------------------
>
>                 Key: KARAF-5693
>                 URL: https://issues.apache.org/jira/browse/KARAF-5693
>             Project: Karaf
>          Issue Type: Bug
>    Affects Versions: 4.0.10
>            Reporter: Greg Logan
>            Priority: Major
>         Attachments: broken.log, broken.properties, working.log, working.properties
>
>
> Over at the Opencast project (https://github.com/opencast/opencast) we rarely (1/20 or
so) have assemblies seem to build correctly, but a number of libraries required for the assembly
to boot with all installed modules will be missing from config.properties.  A repackage
of the same codebase and built artifacts resolves the issue, so this seems to be related to
the assembly itself rather than the underlying modules.  This also seems to be independent
of our branches, and versions - we've been observing this off-and-on for more than a year
but I've just never gotten around to filing this.
>  
> Things attached:
>  * working and broken.log: full build outputs (including component compilation) of the
working and failing builds, respectively
>  * working and broken.properties: the config.properties generated in the working, and failing
builds, respectively.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message