| Summary: | Preference access in file locking code | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [ECD] Orion | Reporter: | John Arthorne <john.arthorne> | ||||
| Component: | Server | Assignee: | John Arthorne <john.arthorne> | ||||
| Status: | RESOLVED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | P3 | CC: | pwebster | ||||
| Version: | unspecified | ||||||
| Target Milestone: | 8.0 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows 7 | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
John Arthorne
Created attachment 249204 [details]
Stack trace
This is a stack trace from an Orion-based product of a deadlock while accessing preferences.
Just some notes, mostly to myself: The stack shows a JVM level deadlock between OSGi class loading and the instance lock on RootPreferences (due to synchronized getChild method). The preferences need to do class loading to instantiate custom preference scopes. At the same time the ResourcesPlugin is in the middle of startup, trying to access preferences. Nothing in Orion will directly fix this, but the risk of contention is reduced by avoiding preference access within our metadata locking code. |