Community
Participate
Working Groups
see bug 47255 comment 27 "Please be aware that if your bundle starts any threads but does not ensure the threads are stopped when your bundle is stopped then you may run into issues when your bundle is updated or uninstalled since we still close classloaders in these cases." On the other hand javadoc for JobManager.shutdown says: "Shuts down the job manager. Currently running jobs will be told o stop, but worker threads may still continue processing." In other words, classloader can be shutdown while jobs threads are still active.
This is all true, but I'm not sure what your point is... Just like with threads, clients need to make sure they finish their jobs before their bundle stops, otherwise *they* are running their own code after their class loader has gone away. Anything we do during shutdown of the jobs bundle is too late, because client bundles will be shutdown much before that point and will already be vulnerable to this problem.
I believe that information needs to be placed somewhere (help?) just for education purposes. Discovering what's wrong is not a trivial task, espacially that logging is at that point shut down.
Added to runtime_jobs.htm in the platform plugin developers guide.