Bug 53299 Synchronizing 5 projects is locking too much
Build 20040219 While synchronizing 5 projects, I started editing one file in project no.1, while no.3 was being synchronized (1 was long done). I still got locked on validate edit, though the project 1 should have been released from the sync rsc lock. (I did check that no other competing job was getting in the way)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/filebuffers/CompilationUnitDocumentProvider2.java
*/
			protected void removeAllAnnotations(boolean fireModelChanged) {
				super.removeAllAnnotations(fireModelChanged);
				fReverseMap.clear();
			}
			
			/*
			 * @see AnnotationModel#removeAnnotation(Annotation, boolean)
			 */
			protected void removeAnnotation(Annotation annotation, boolean fireModelChanged) {
				Position position= getPosition(annotation);
				Object cached= fReverseMap.get(position);
				if (cached instanceof List) {
					List list= (List) cached;
					list.remove(annotation);
					if (list.size() == 1) {
						fReverseMap.put(position, list.get(0));
						list.clear();
					}
				} else if (cached instanceof Annotation) {
					fReverseMap.remove(position);
				}
				super.removeAnnotation(annotation, fireModelChanged);
			}
		}
		
		
		protected static class GlobalAnnotationModelListener implements IAnnotationModelListener, IAnnotationModelListenerExtension {
			
			private ListenerList fListenerList;