| Summary: | Deadlock initializing Java EE EMF models - CommonPackageImpl | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [WebTools] WTP Java EE Tools | Reporter: | Carl Anderson <ccc> | ||||
| Component: | jst.j2ee | Assignee: | Carl Anderson <ccc> | ||||
| Status: | RESOLVED FIXED | QA Contact: | Chuck Bridgham <cbridgha> | ||||
| Severity: | major | ||||||
| Priority: | P2 | Flags: | cbridgha:
review+
|
||||
| Version: | 3.2 | ||||||
| Target Milestone: | 3.2.3 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows XP | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
Carl Anderson
Created attachment 185569 [details] Remove Webservice_clientPackageImpl from the separate init thread In bug 315286, I put in a directed ordering of the initialization. The only part that I was unsure of how to handle was CommonPackageImpl and Webservices_clientPackageImpl initializations- the latter requires quite a few fields of the former, but the former requires one field of the latter, thus there is no good way to initialize the two of them in a directed manner. The problem here is that CommonPackageImpl is being initialized, it kicks off J2EEInit.initEMFModels(), which quickly initializes Webservices_clientPackageImpl, and the two deadlock. Switching their order only moves the problem from one place to another. My solution is simple- remove Webservices_clientPackageImpl from J2EEInit.initEMFModels(). This will ensure that CommonPackageImpl is initialized first... and the initialization of Webservices_clientPackageImpl will be done as part of CommonPackageImpl.initializePackageContents(). approve Committed to R3_2_maintenance and HEAD for WTP 3.2.3 and WTP 3.3 M5 |