Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
framework-3.0.7, framework-3.2.2
-
None
Description
We have a strange situation on a Framework 3.0.7 based system here which is not reproducible on all platforms.
We can track down a system freeze/deadlock to three threads all contending for bundle locks and the global lock. See attached FELIX-3000-stacktrace.txt for the stack trace.
Looking at the Framework source, particularly acquireBundleLock and acquireGlobalLock I cannot see where this "deadlock" can occur.
The only hint I have is a note in the Felix.registerService:
> // TODO: CONCURRENCY - Reconsider firing event here, outside of the
> // bundle lock.
I wonder whether this situation can be fixed with moving the service registration event ?
Looking at the code it seems to have not been changed. Thus I report this against 3.0.7 where we saw this and 3.2.2 being the latest release.
Attachments
Attachments
Issue Links
- relates to
-
FELIX-3174 Startup freeze caused in acquireBundleLock
- Closed