Bug 20173

Summary: Open type from a jar located inside a closed project.
Product: [Eclipse Project] JDT Reporter: David Audel <david_audel>
Component: CoreAssignee: Philipe Mulet <philippe_mulet>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: P2    
Version: 2.0   
Target Milestone: 2.0 F4   
Hardware: PC   
OS: Windows 2000   
Whiteboard:

Description David Audel CLA 2002-06-13 10:22:15 EDT
1. Import org.eclipse.swt and its required plugins
2. Close org.eclipse.swt.win32
3. Query all types (Ctrl+Shift+T)
4. Search SWT in the list
SWT is present.
5. Open SWT
An error window appear.
Comment 1 Philipe Mulet CLA 2002-06-13 10:51:55 EDT
Cannot reproduce. SWT isn't listed.

Note: my workspace is a full source workspace.
Comment 2 Philipe Mulet CLA 2002-06-13 12:06:20 EDT
Reproduced. Problems comes from the fact that when removing the package 
fragment root (from other projects), its index is flushed from memory, but 
indexing jobs related to this root JAR are not discarded. 

If creating a new workspace and immediately importing projects and closing one, 
the indexing is still processing the JAR and thus if closed before indexing is 
over, the index will end up in the cache and thus its types will be made 
available in spite of the JAR isn't accessible anymore.

====
Fix consists in 2 changes:
- AddJarFileToIndex#belongsTo recognizes either the project (as before) or the 
jar path as its family name
- when removing a JAR package fragment root, the index manager is requested to 
discard jobs of family jar-path.
====

Fixed
Comment 3 Philipe Mulet CLA 2002-06-13 12:06:35 EDT
Fixed
Comment 4 Philipe Mulet CLA 2002-06-14 11:57:50 EDT
Removing 'FIXED' status, until it gets approved for F4
Comment 5 Philipe Mulet CLA 2002-06-14 12:25:19 EDT
Fix is quite trivial, and similar to what we do in other related situations, we 
simply had missed this one scenario.

If we don't fix it then on racing conditions, users might still find matches 
using search queries, open type dialog, inside JARs which are no longer 
accessible. This is an area where we are trying to have zero bugs, and this is 
the only left at this stage.

Comment 6 Olivier Thomann CLA 2002-06-14 13:21:00 EDT
SWT is not in the list anymore when swt.win32 is closed.
Verified.
Comment 7 Jerome Lanneluc CLA 2002-06-17 05:57:23 EDT
Reviewed and approved fix.
Comment 8 Jerome Lanneluc CLA 2002-06-17 08:26:29 EDT
No veto. Marking as fixed.
Comment 9 Jerome Lanneluc CLA 2002-06-17 08:30:03 EDT
Verified.