Details
-
New Feature
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
4.0.9, 4.1.1
-
None
Description
Feature service should expose a way to hook into the feature:install process, so components living inside container can understand when a bulk bundle operation starts, ends and reaches a major milestone.
This ability is needed to optimize OpenDaylight startup/shutdown procedures, as exemplified by https://bugs.opendaylight.org/show_bug.cgi?id=7925 and https://bugs.opendaylight.org/show_bug.cgi?id=7927. In these cases we are scanning deployed bundles for well-known file locations as the bundles get resolved. These files are then used to compile the effective model of the run-time world (which is an expensive operation).
Since there is no way to understand that an install transaction is going on, the model is invalidated whenever a bundle is resolved and or stopped, leading to multiple compilations (and oftentime failures, as all requirements are not yet met) during a single feature:install invocation or framework shutdown.
This requires having callbacks invoked from Deployer.deploy() for:
1) just before any bundle operations are performed
2) once all bundles have been resolved, but not started
3) once the operation completes and before the next bundle movement starts
Attachments
Issue Links
- links to