I understand the need to clean up but the OSGi BundleTracker should
already provide all that.
We even already track these events in aries jpa.
See
http://www.osgi.org/javadoc/r4v42/org/osgi/util/tracker/BundleTracker.html
So when a bundle is stopped or uninstalled then aries jpa can already
clean up without the Quiesce API.
Interestingly in apache karaf we do not use the Quiesce API.
Can you describe what happens when we just uninstall a persisence unit
bundle? Will the resources then not be cleaned up correctly?
Btw. One of our customers is facing this issue
https://issues.apache.org/jira/browse/ARIES-1270
Is this one of these problematic cases or is it just a bug that we can
fix independently of the Quiesce API? The issue seems to be related to
the jpa.container module as
it is independent of jpa.container.context. Unfortunately I was not able
to find the root cause of it.
Christian
On 12.02.2015 11:25, Graham Charters wrote:
Hi David/Christian,
Here is what Mark wrote, that didn't make it:
"Quiesce is about stopping a bundle gracefully prior to its uninstallation,
which is why we've had no need to implement a 'restart' capability. We
currently use Apache Aries quiesce within IBM WebSphere Application Server.
It's used in a scenario where an administrator is replacing some of the
bundles within a running application. The code has been in use in that
product for some years now so yes, I'm sorry but we do have a definite need
for the facility."
Essentially, we use it to notify containers/extenders of bundles that are
about to be uninstalled (prior to that actually being done) so they can
perform house-keeping ahead of uninstallation being kicked off.
Regards, Graham.
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
http://www.talend.com