Konrad Windszus created SLING-9210:
--------------------------------------
Summary: Make DynamicClassloader behave deterministically in case
several bundles export the same package
Key: SLING-9210
URL: https://issues.apache.org/jira/browse/SLING-9210
Project: Sling
Issue Type: Improvement
Affects Versions: Commons ClassLoader 1.4.4
Reporter: Konrad Windszus
Fix For: Commons ClassLoader 1.4.6
Currently in case several bundles export the same package (in different
versions) the first one is being picked in
https://github.com/apache/sling-org-apache-sling-commons-classloader/blob/dedb69a9fb0f8cb2ebf3050560311739b9f00ce4/src/main/java/org/apache/sling/commons/classloader/impl/PackageAdminClassLoader.java#L156,
but it is not described which one is the first one in
https://osgi.org/javadoc/r6/core/org/osgi/service/packageadmin/PackageAdmin.html#getExportedPackages(org.osgi.framework.Bundle).
Given that now it is possible to install the same bundle in multiple version
(SLING-9172 and FELIX-6232) a better, more predictable logic should be chosen.
I propose to always pick the highest exported version.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)