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
int remainingWorkUnits = 100000;
		
		monitor.beginTask(description, remainingWorkUnits); 
		disableUpdatesJob.schedule();
		disableUpdatesJob.join();
		try {
			
			
			
			while (hasPendingChanges() && !monitor.isCanceled()) {
				
				
				
				
				try {
					int totalWork;
					lock.acquire();
					try {
						totalWork = totalWork();
						if (sortOrder != queues.getSorter()) {
							queues.setComparator(sortOrder);
						}
					
						SubProgressMonitor sub = new SubProgressMonitor(monitor, 0);
						queues.refreshQueues(sub);
					} finally {
						lock.release();
					}
					
					if (uiJob.shouldSchedule()) {