| Summary: | API Baseline becomes empty | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] PDE | Reporter: | Darin Wright <darin.eclipse> | ||||
| Component: | API Tools | Assignee: | Olivier Thomann <Olivier_Thomann> | ||||
| Status: | VERIFIED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | P3 | CC: | Michael_Rennie, Olivier_Thomann | ||||
| Version: | 3.6 | Flags: | Michael_Rennie:
review+
darin.eclipse: review+ |
||||
| Target Milestone: | 3.6.1 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows XP | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
Darin Wright
Reproduced. I'll try in self-hosting. I don't get it anymore. I keep investigating it. Got it again. We can only got it if we create the baselines and do a build within the same session. The problem comes from the fact that the baseline has no longer any components already initialized but its handle is not saved in the handle cache. This is because in the save method when the baselines are persisted on disk, the corresponding handle is not saved within the handle cache. So since there is no entry in the handle cache for the corresponding baseline, its contents cannot be restored. Once the baseline is reopen as empty, its original contents will be overridden on disk on the next save action. So the baseline will need to be reinitialized from scratch. Created attachment 170963 [details]
Proposed fix
With this patch, I can no longer get an empty baseline. I also renamed some "profile" into "baseline" in the same patch. Darin, please review. The only thing that worries me is the fact that the save action in not synchronized. I don't know if the save action can be called concurrently. Michael, please review. +1 works well. applied to HEAD and 3.6.1 |