Bug 58542 Dangerous change to setSystem in MarkersViews
In MarkerView.refresh() there is the line uiJob.setSystem(true); Which may happen after the uiJob has run. As a result it is possible that it is not being used to decrement the count of jobs and the progress monitor can run forever.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/TableContentProvider.java
* Performs a single update to the viewer. Based on the contents of the pending* queues,
	 * items will either be removed, added, or refreshed in the viewer (in that order). This
	 * should only be called within a synchronized block, since the various queues shouldn't
	 * be modified during an update. This method is invoked repeatedly by jobs to gradually
	 * apply the pending changes.
	 */
	private int updateViewer() {
		
		int result;
		
		
		
		
		lock.acquire();
		try {
			if (getViewer().getSorter() != null) {
				getViewer().setSorter(null);
			}
			
			resync();
			
			result = queues.nextUpdate();
		} finally {
			lock.release();
		}
		
		return result;
	}	
}