Incinerator - Eliminating Stale References in Dynamic OSGi Applications

In the context of smart homes, the OSGi middleware is emerging as a standard to execute applications that collaborate together to render services. However, an application update in OSGi can introduce stale references, i.e., references to an outdated version of the application. A stale reference leads to a memory leak and to an inconsistency between the outdated version of the application and the new one. To avoid stale references, we propose Incinerator, a Java virtual machine extension that not only detects, but also eliminates stale references at runtime. Incinerator mainly runs when the garbage collector scans the object graph, so as to find stale references and set them to null. We have used Incinerator to detect a stale reference in the Knopflerfish OSGi framework implementation. Incinerator has a low overhead of at most 3.3% on average on the applications of the DaCapo benchmark suite. This shows that Incinerator is reasonable for use in production environments.

Data and Resources

Additional Info

Field Value
Source https://inria.hal.science/hal-00952327
Author Attouchi, Koutheir, Thomas, Gaël, Bottaro, André, Lawall, Julia L., Muller, Gilles
Maintainer CCSD
Last Updated May 6, 2026, 05:44 (UTC)
Created May 6, 2026, 05:44 (UTC)
Identifier Report N°: RR-8485
Language en
Rights https://about.hal.science/hal-authorisation-v1/
contributor Orange Labs [Meylan] ; Orange Labs
creator Attouchi, Koutheir
date 2014-02-26T00:00:00
harvest_object_id 1b60c8d7-1640-40cb-903e-a7400130f596
harvest_source_id 3374d638-d20b-4672-ba96-a23232d55657
harvest_source_title test moissonnage SELUNE
metadata_modified 2025-02-26T00:00:00
set_spec type:REPORT