+1 for a) for now.

Afterwards we can take some time and  probably do c) or improve b) by waiting 
for the service to become active (in case it is resolvable in the current 
system).

Konrad

> On 10. Mar 2022, at 17:33, Stefan Seifert <stefan.seif...@diva-e.com.INVALID> 
> wrote:
> 
> during release process of Sling 12 we discovered SLING-11189 [1] which 
> happens only on certain windows environments, but is there a blocker as 
> Sling-Initial-Content from bundles like composum (may affect other apps as 
> well) are corrupted during extraction, actually breaking the application. the 
> root cause is a race condition on sling startup where the content reader 
> implementations are registered after the whiteboard for handling them is 
> registered, and after the first bundles are actually processed.
> 
> to solve this we have multiple approaches, i want to do a quick vote on these 
> options to unblock the release:
> 
> a) apply only PR #12 [2] which simply defines a mandatory dependency between 
> the whiteboard and the 4 built-in readers via DS. the list of mandatory 
> readers is hardcoded in the code.
> 
> b) apply only PR #13 [3] which introduces a new directive 
> "requireImportProviders" allowing bundles to actually define which import 
> providers they depend on, and if those are not there the importing of the 
> initial content is delayed until they become available. if the directive is 
> missing a default list is assumed which is configurable via OSGi (and 
> defaults to the 4 built-in readers). the current implementation has the small 
> drawback that it prints out some error messages in case the bundle processing 
> is delayed, even if it's only for a few milliseconds due to sling startup.
> 
> c) combine PR #12 [2] and PR #13 [3] to avoid the error messages for the 
> built-in readers.
> 
> d) look for other solutions, e.g. implementing a) "the other way around" by 
> having the whiteboard register the reader implementations itself, which 
> probably means moving away from DS for those reader service implementations.
> 
> z) take more time for discussing the options a)-d) and go with workaround 
> from [4] for Sling 12 which fixes this issue via configuration only for Sling 
> Starter, not in the content loader bundle itself.
> 
> please cast your votes on this options.
> 
> stefan
> 
> [1] https://issues.apache.org/jira/browse/SLING-11189
> [2] https://github.com/apache/sling-org-apache-sling-jcr-contentloader/pull/12
> [3] https://github.com/apache/sling-org-apache-sling-jcr-contentloader/pull/13
> [4] https://github.com/apache/sling-org-apache-sling-starter/pull/59

Reply via email to